Функциональная субд

Стратегии работы с внешней памятью

Определение 5

СУБД с непосредственной записью — это системы, в которых все измененные блоки данных сразу же записываются во внешнюю память, как только поступит сигнал подтверждения любой транзакции. Такую стратегию используют лишь при высокой эффективности внешней памяти.

Определение 6

СУБД с отложенной записью — это система, в которой изменения аккумулируются в буфере внешней памяти до наступления любого из нижеприведенных событий:

  • контрольной точки;
  • конца пространства во внешней памяти, отведенного под журнал. Система выполняет контрольную точку и пишет журнал сначала, стирая прежнюю информацию;
  • останова — СУБД ожидает, чтобы все содержимое буферов внешней памяти было перенесено во внешнюю память, после этого делает отметки, что останов базы данных выполнен корректно;
  • нехватки оперативной памяти для буферов внешней памяти.

Используя данную стратегию можно избежать частого обмена с внешней памятью и значительно повысить эффективность работы СУБД.

Отзывы и комментарии о сайте: cashbox.ru

Связывание таблиц

Если для какой-то из таблиц не было определено ключевое поле, то в поле Тип отношения отображается текст «Не определено».

  1. Откройте окно Схема данных, нажав кнопку на панели инструментов
  2. В диалоговом окне Добавление таблицы выберите вкладку Таблицы и, нажимая кнопку Добавить, разместите в окне Схема данных все ранее созданные таблицы базы данных, список которых будет отображен в диалоговом окне. Можно добавить все таблицы сразу, выделив 1-ую таблицу и нажав Shift — последнюю таблицу.
  3. Нажмите кнопку Закрыть. В результате в окне Схема данных будут представлены все таблицы базы данных КОЛЛЕДЖ со списками своих полей.
  4. Установите связь между таблицами ГРУППА и СТУДЕНТ по простому ключу Номер Группы или Код группы (смотри в своей БД). Для этого в окне Схема данных установите курсор мыши на ключевое поле НГ главной таблицы ГРУППА и перетащите это поле на поле Номер Группы в подчиненной таблице СТУДЕНТ  Для удаления ошибочной связи в окне Схема данных выделите ненужную связь и нажмите Del.
  5. В открывшемся окне Изменение связей в строке Тип отношения установится один-ко-многим. Отметьте доступный для этого типа отношений параметр Обеспечение целостности данных.
  6. Установите флажки каскадное обновление и удаление связанных полей, тогда будет обеспечена автоматическая корректировка данных для сохранения целостности во взаимосвязанных таблицах. Нажмите Создать. Чтобы линии связи не пересекались и были удобны для восприятия, расположите таблицы в окне Схемы данных в соответствии с их относительной подчиненностью.
  7. Установите связи по простому ключу для других пар таблиц:

ПРЕДМЕТПРЕПОДАВАТЕЛЬ 

ПРЕДМЕТ-ЗАНЯТИЯ 

ПРЕПОДАВАТЕЛЬГРУППА

ГРУППАЭКЗАМЕН 

Классификация БД

Базы данных можно классифицировать по разным признакам:

  1. По характеру хранимой информации БД бывают:

    • фактографическими — хранящими краткую информацию в строго определенном формате, это, так называемые, картотеки;
    • документальными – к ним относятся всевозможные документы, причем не только текстовые, но и графические, звуковые (мультимедиа), а также видеофайлы – все это, так называемые, архивы.
  2. По способу хранения данных (по техническим средствам) БД бывают:

    • централизованными – когда вся информация хранится на одном компьютере, который может быть представлен как автономно, так и в качестве сервера сети с открытым доступом для пользователей-клиентов;
    • распределенными – которые используются в локальных и глобальных компьютерных сетях, причем разные части базы хранятся на разных компьютерах.
  3. По структуре организации данных БД бывают:

    • реляционными;
    • иерархическими;
    • сетевыми.

Мультимодельность

Термин «многовариантное хранение» вошел в обиход в 2011 году. Осознание проблем подхода и поиск решения заняли несколько лет, и к 2015 году устами аналитиков Gartner ответ был сформулирован:

  • Из «Market Guide for NoSQL DBMSs — 2015»:
  • Из «Magic Quadrant for ODBMS — 2016»:

Похоже, что в этот раз аналитики Gartner с прогнозом не ошиблись. Если зайти на страницу с основным рейтингом СУБД на DB-Engines, можно увидеть, что большая часть его лидеров позиционирует себя именно как мультимодельные СУБД. То же можно увидеть и на странице с любым частным рейтингом.

В таблице ниже приведены СУБД — лидеры в каждом из частных рейтингов, заявляющие о своей мультимодельности. Для каждой СУБД указаны первоначальная поддерживаемая модель (когда-то бывшая единственной) и наряду с ней модели, поддерживаемые сейчас. Также приведены СУБД, позиционирующие себя как «изначально мультимодельные», не имеющие по заявлениям создателей какой-либо первоначальной унаследованной модели.

СУБД Изначальная модель Дополнительные модели
Oracle Реляционная Графовая, документная
MS SQL Реляционная Графовая, документная
PostgreSQL Реляционная Графовая*, документная
MarkLogic Документная Графовая, реляционная
MongoDB Документная Ключ-значение, графовая*
DataStax Wide-column Документная, графовая
Redis Ключ-значение Документная, графовая*
ArangoDB Графовая, документная
OrientDB Графовая, документная
Azure CosmosDB Графовая, документная, реляционная

Далее для каждого из классов мы покажем, как реализуется поддержка нескольких моделей в СУБД из этого класса. Наиболее важными будем считать реляционную, документную и графовую модели и на примерах конкретных СУБД показывать, как реализуются «недостающие».

В чём преимущества

Базы дан­ных и их систе­мы управ­ле­ния зато­че­ны на рабо­ту с боль­шим объ­ё­мом дан­ных и от лица боль­шо­го чис­ла поль­зо­ва­те­лей. Сей­час вы поймёте.

Ско­рость — ещё одно пре­иму­ще­ство базы дан­ных. База дан­ных устро­е­на так, что она лег­ко и быст­ро нахо­дит, запи­сы­ва­ет, пере­пи­сы­ва­ет и сно­ва нахо­дит дан­ные. Всё пото­му, что СУБД все­гда зна­ет, что где лежит и по како­му кри­те­рию искать. Там не будет слу­чай­ных дан­ных в слу­чай­ном месте.

Ско­рость важ­на ещё и пото­му, что СУБД обыч­но обслу­жи­ва­ет сра­зу мно­го пото­ков: одно­вре­мен­но ей могут поль­зо­вать­ся десят­ки и сот­ни тысяч чело­век, поэто­му ей неко­гда копать­ся. В хоро­шо сде­лан­ных БД всё молниеносно.

Слож­ность. Базы дан­ных нуж­ны в чис­ле про­че­го для хра­не­ния слож­но струк­ту­ри­ро­ван­ных дан­ных. Мы при­вык­ли думать, что база дан­ных — это такая таб­ли­ца, где есть стро­ки и столб­цы. Но база дан­ных при пра­виль­ной орга­ни­за­ции может намно­го больше:

  • Свя­зы­вать одну еди­ни­цу дан­ных с мно­же­ством дру­гих. Напри­мер, если один чело­век совер­шил мно­го зака­зов со мно­же­ством това­ров внут­ри каж­до­го, база дан­ных спо­соб­на хра­нить и обра­ба­ты­вать такие связи.
  • База может хра­нить дере­во дан­ных — вро­де того, о кото­ром мы писа­ли недав­но. Попро­буй в реаль­ной жиз­ни похра­нить дерево!
  • В базах могут жить ссыл­ки на дру­гие фраг­мен­ты и отде­лы базы.

Базу мож­но пред­ста­вить как таб­ли­цу, но лишь в самом упро­щён­ном виде. Для более слож­ных задач базу мож­но пред­ста­вить как очень слож­ное дере­во, или огром­ный склад упо­ря­до­чен­ных коро­бок, или даже как огром­ный завод по фасов­ке данных.

MyISAM

MyISAM – является родным типом таблиц для базы СУБД MySQL. База данных в MySQL организуется как каталог. Таблицы базы данных организуются как файлы данного каталога. Каждая MyISAM таблица хранится на диске в трех файлах, имена которых совпадают с названием таблицы, а расширение может принимать одно из следующих значений:

  • Frm – содержит структуру таблицы, в файле данного типа хранится информация об именах и типах столбцов и индексов.
  • Myd – файл, в котором содержатся данные таблицы.
  • Myi – файл, котором содержатся индексы таблицы.

Особенности типа таблиц MyISAM:

  • Данные хранятся в кросс-платформенном формате, это позволяет переносить базы данных с сервера непосредственным копированием файлов, минуя промежуточные форматы.
  • Максимальное число индексов в таблице составляет 64. Каждый индекс может состоять максимум из 16 столбцов.
  • Для каждого из текстовых столбцов может быть назначена своя кодировка.
  • Допускается индексирования текстовых столбцов, в том числе и переменной длины.
  • Поддерживается полнотекстовый поиск.
  • Каждая таблица имеет специальный флаг, указывающий правильность закрытия таблиц. Если сервер останавливается аварийно, то при его повторном старте незакрытые флаги сигнализируют о возможных сбойных таблицах, сервер автоматически проверяет их и пытается восстановить.

СУБД Microsoft Access

Определение 2

Система управления базами данных (СУБД) Microsoft Access представляет собой профессиональную программу управления базами данных, с помощью которой возможны накапливание и систематизация разнообразной информации, а также поиск и сортировка объектов согласно выбранным критериям, конструирование удобных форм для ввода данных и генерирование на основании имеющихся записей прекрасно оформленных отчетов.

Используя MS Access можно обеспечить одновременный доступ к данным десяткам пользователей. Данная БД используется для хранения больших объемов информации, управления данными, их выборкой, сортировкой и другими действиями.

Замечание 2

С БД могут работать 2 категории исполнителей: проектировщики (программисты) и пользователи. Проектировщиками разрабатывается структура таблиц БД и согласовывается с заказчиками, а также ведется отладка БД. Пользователи заполняют и обслуживают БД.

СУБД работает в 2-х режимах: проектировочном и пользовательском. Первый применяется при создании или изменении структуры базы данных и создании ее объектов. Второй режим используется при непосредственной работе с ранее подготовленными объектами для наполнения БД или получения данных из нее.

Вся информация БД хранится в одной или нескольких таблицах, состоящих из набора однотипных записей, размещенных друг за другом. Эти записи представляют собой строки таблицы, которыми можно управлять. В БД строку таблицы называют записью, а столбец — полем.

Каждая запись может хранить самую разнообразную информацию. Поля одного типа разных записей образуют столбец таблицы, который содержит значения определенного свойства.
Поля являются различными характеристиками объекта. Значения полей в одной строке относят к одному объекту. Каждое поле имеет свое имя.

Другие модули БД используются для обработки информации таблиц. Запросы проводят выборку данных согласно определенным условиям. Формы используют для форматированного ввода и восприятия информации. Отчеты выводят оформленные списки записей с заголовками, пунктами и подпунктами.

Таким образом, объектами базы данных Microsoft Access являются:

  • таблицы – основной объект используется для хранения данных и структуры БД;
  • запросы – представлены специально созданными таблицами для отбора, сортировки и анализа данных;
  • формы – объекты для удобства ввода данных;
  • отчеты – выводят данные на бумагу в удобном для просмотра виде;
  • страницы – используются для работы в сети Интернет;
  • макросы – представляют собой макрокоманды для автоматизации повторяющихся операций;
  • модули – используются для обработки событий и вычислений.

Microsoft Access позволяет объединить сведения из различных источников в одной реляционной БД. С помощью создаваемых форм, запросов и отчетов можно быстро и эффективно обновить данные, получить ответы на вопросы, осуществить поиск необходимой информации, проанализировать данные и выпустить на печать отчеты.

В БД сведения из каждого источника сохраняются в отдельной таблице. В ходе работы с данными из нескольких таблиц устанавливается связь между ними.

Замечание 3

При выходе из Microsoft Access измененные данные сохраняются автоматически. Однако при изменении структуры любого объекта базы данных в Microsoft Access выводится запрос на подтверждение сохранения этих изменений перед завершением работы.

Основными действиями, которые пользователь может выполнить, применяя СУБД являются:

  • создание структуры базы данных;
  • заполнение базы информацией;
  • изменение структуры и содержания базы данных;
  • поиск информации в базе;
  • сортировка данных;
  • защита базы данных.

Понятие о базе данных и СУБД

База данных представляет собой один или несколько специальным образом организованных файлов, которые хранят систематизированную информацию, доступ к которой осуществляется с помощью программных средств системы управления базой данных (СУБД). Иначе говоря, база данных – это совокупность данных, обладающая определенными свойствами:

  1. структурированностью;
  2. взаимосвязанностью;
  3. независимостью от прикладных программ.

Замечание 1

Таким образом, база данных (БД) представляет собой совокупность организованной определенным образом информации на какую-либо тему (в рамках какой-либо предметной области), хранящуюся в электронном виде. К примеру, база данных сети магазинов и т. д.

Для чего нужны

Вот основ­ные зада­чи БД на при­ме­ре гардеробной:

  • Сохра­нить наши дан­ные по запро­су — что­бы вы мог­ли открыть дверь, пове­сить курт­ку, закрыть дверь и боль­ше не думать ни о курт­ке, ни о гардеробной.
  • Изме­нить наши дан­ные по запро­су — что­бы мож­но было лег­ко извлечь из гар­де­роб­ной все дыря­вые нос­ки и поло­жить на их место целые.
  • Най­ти эти дан­ные по запро­су — что­бы быст­ро най­ти при­лич­ный пиджак или пар­ный носок.
  • Не дать про­чи­тать эти дан­ные тем, кому не сле­ду­ет, а кому надо — дать. Напри­мер, млад­ший брат может смот­реть на ваши крос­сов­ки, но не может их брать. А девуш­ка (или парень) может поло­жить свои вещи, но толь­ко на опре­де­лён­ную полку.
  • Под­дер­жи­вать поря­док и не дать захла­мить­ся — если вам было лень и вы про­сто кину­ли тол­стов­ку куда попа­ло, что­бы гар­де­роб­ная либо сама нашла, куда эту тол­стов­ку пра­виль­но поло­жить, либо ска­за­ла: «Э БРАТ ЗАЧЕМ ЗАХЛАМЛЯЕШЬ ПОЛОЖИ НОРМАЛЬНО ДАВАЙ»
  • Мас­шта­би­ро­вать­ся — что­бы вы мог­ли про­сто вешать в гар­де­роб­ную вещи и не думать об объ­ё­ме полок.
  • Не поте­рять дан­ные — если квар­ти­ра будет гореть, при­лич­ная гар­де­роб­ная не долж­на даже нагреть­ся. Или, если она всё-таки горит, что­бы где-то в защи­щён­ном под­зем­ном гара­же была точ­ная копия этой гар­де­роб­ной со все­ми акту­аль­ны­ми вещами.

Логическое проектирование и оптимизация

OLTP – обработка транзакций в режиме реального времени. Способ организации БД, при котором система работает с небольшими по размерам транзакциями, но идущими большим потоком, и при этом клиенту требуется от системы минимальное время отклика. Примерами OLTP приложений могут быть системы складского учета, системы заказов билетов, банковские системы, выполняющие операции по переводу денег.
Особенности OLTP приложений:

  • Транзакций очень много.
  • Транзакции выполняются одновременно.
  • При возникновении ошибки транзакция должна целиком откатиться и вернуть систему к состоянию, которое было до начала транзакции (не должно быть ситуации, когда деньги сняты со счета, но не поступили на другой счет).
  • Все запросы к базе данных, которые должны выполняться в реальном времени, состоят из команд вставки, обновления, удаления.

OLAP системы характеризуются следующими признаками:

  • Добавление в систему новых данных происходит относительно редко крупными блоками.
  • Данные, добавленные в систему, обычно никогда не удаляются.
  • Перед загрузкой данные проходят различные процедуры очистки, связанные с тем, что в одну систему могут поступать данные из многих источников, имеющих различные форматы представления для одних и тех же понятий, данные могут быть некорректны, ошибочны
  • Запросы к системе являются нерегламентированными и, как правило, достаточно сложными. Очень часто новый запрос формулируется аналитиком для уточнения результата, полученного при выполнении предыдущего запроса.
  • Скорость выполнения запросов важна, но не критична.

Встраиваемые

Встраиваемая система управления базой данных — это система, которая может быть связана с клиентским приложением таким образом, чтобы приложение и СУБД работали в едином адресном пространстве. Вместе со встроенной базой данных приложение может быть развернуто как единая программа, которая функциональна, эффективна и автономна. Благодаря связыванию приложения с базой данных, прикладная система выигрывает от снижения общей сложности и уменьшения затрат на администрирование. Во многих случаях встраиваемая система управления базой данных — самый подходящий вариант для систем с ограниченными ресурсами. Однако, встраиваемые СУБД зачастую подходят лишь для решения задач узкой спецификации.

Литература

  • Когаловский М.Р. Энциклопедия технологий баз данных. — М.: Финансы и статистика, 2002. — 800 с. — ISBN 5-279-02276-4.
  • Кузнецов С. Д. Основы баз данных. — 2-е изд. — М.: Интернет-университет информационных технологий; БИНОМ. Лаборатория знаний, 2007. — 484 с. — ISBN 978-5-94774-736-2.
  • Дейт К. Дж. Введение в системы баз данных = Introduction to Database Systems. — 8-е изд. — М.: Вильямс, 2005. — 1328 с. — ISBN 5-8459-0788-8 (рус.) 0-321-19784-4 (англ.).
  • Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика = Database Systems: A Practical Approach to Design, Implementation, and Management. — 3-е изд. — М.: Вильямс, 2003. — 1436 с. — ISBN 0-201-70857-4.
  • Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс = Database Systems: The Complete Book. — Вильямс, 2003. — 1088 с. — ISBN 5-8459-0384-X.
  • C. J. Date. Date on Database: Writings 2000–2006. — Apress, 2006. — 566 с. — ISBN 978-1-59059-746-0, 1-59059-746-X.

Polyglot persistence

Сказанное выше приводит к тому, что порою в рамках даже одной системы приходится для хранения данных и решения различных задач по их обработке использовать несколько различных СУБД, каждая из которых поддерживает свою модель данных. С легкой руки М. Фаулера, автора ряда известных книг и одного из соавторов Agile Manifesto, такая ситуация получила название многовариантного хранения («polyglot persistence»).

Фаулеру принадлежит и следующий пример организации хранения данных в полнофункциональном и высоконагруженном приложении в сфере электронной коммерции.

Пример этот, конечно, несколько утрированный, но некоторые соображения в пользу выбора той или иной СУБД для соответствующей цели можно найти, например, здесь.

Понятно, что быть служителем в таком зоопарке нелегко.

  • Объем кода, выполняющего сохранение данных, растет пропорционально числу используемых СУБД; объем кода, синхронизирующего данные, — хорошо если не пропорционально квадрату этого числа.
  • Кратно числу используемых СУБД возрастают затраты на обеспечение enterprise-характеристик (масштабируемости, отказоустойчивости, высокой доступности) каждой из используемых СУБД.
  • Невозможно обеспечить enterprise-характеристики подсистемы хранения в целом — особенно транзакционность.

С точки зрения директора зоопарка все выглядит так:

  • Кратное увеличение стоимости лицензий и техподдержки от производителя СУБД.
  • Раздутие штата и увеличение сроков.
  • Прямые финансовые потери или штрафные санкции из-за несогласованности данных.

Имеет место значительный рост совокупной стоимости владения системой (TCO). Есть ли из ситуации «многовариантного хранения» какой-то выход?

Как ставить хештеги в разных социальных сетях

В каждой соцсети есть свои тонкости. Рассмотрим подробнее.

С этой соцсети пошло использование хештегов, и по сей день они активно там используются. Более того – без хештегов ваш твит вообще мало кто увидит, кроме подписчиков.


Пример использования хештега в “Твиттере”

Искать посты по определенным хештегам просто: достаточно забить нужное слово в строку поиска. Далее выбираете нужную категорию твитов: “Популярное”, “Последнее”, “Люди”№, “Фотографии”, “Видео”.

Рекомендуется использовать не более 2-3 хештегов, иначе ваш пост могут счесть спамом. Не злоупотребляйте!  Также в “Твиттере” принято вставлять хештег прямо в тело поста, а не в концовку.

Instagram

Вот уж где раздолье для хештегов всех мастей! В “Инстаграме” пост без хештегов – редкость. Это и неудивительно: очень многие любят позалипать вечерком, смотря красивые фото пользователей, объединенные одной темой. Найти записи по определенному хештегу можно в строке поиска вверху страницы.


Пожалуйста – 1797 262 публикации!

Алгоритм прост: если вы добавляете хештеги к своей записи, ваш пост будет показываться первым в ленте – пока кто-то еще не опубликует запись с таким же хештегом, и ваша запись улетит вниз. Есть здесь и ограничения: к одному посту можно добавить не более 30 хештегов. Хотя и это перебор, на мой взгляд.

Популярные хештеги можно подобрать с помощью специальных сервисов (напишу о них в конце статьи). А также внимательно смотреть, какие метки ставят к своим записям другие пользователи.

Поиск по хештегам осуществляется так же: забивается нужное слово в строку поиска.


Мы видим все посты пользователей начиная от самых недавних

Во “Вконтакте” хештеги используются не столь активно, как в “Инстаграме” и “Твиттере”. Здесь принято ставить их в конце поста. И не злоупотреблять количеством, конечно – хоть конкретных ограничений по количеству хештегов не имеется.

Есть во “ВКонтакте” интересная фишка: с помощью хештегов можно группировать посты по теме внутри одного сообщества. Выглядит это так: #отзывы@название сообщества. По этим хештегам можно найти все отзывы по теме.


Пример локального хештега

По моим наблюдениям, хештеги в Facebook используются нечасто. Найти нужную запись можно также по поиску – в этом алгоритм не отличается от других соцсетей. Результаты можно смотреть как все подряд, так и в категориях: “Публикации”, “Люди”, “Фото”, “Видео”, “Места”, “Группы” и так далее.

Рекомендуется ставить не более трех хештегов к одной записи. Иначе ваш пост может не показываться другим пользователям и получить мало охвата.  

Принцип поиска по хештегам тот же. Можно искать посты по теме в категориях “Люди”, “Группы”, “Игры”, “Музыка”, “Видео”. Но есть нюанс: когда вы начинаете вводить хештег, соцсеть сама дает подсказки (типа Т9 на смартфоне). Весьма удобная фишка!

YouTube

Здесь тоже есть ограничение: не более 15 хештегов к одному видео. В остальном все также: видео по хештегам ищутся через поиск (причем видеохостинг дает подсказки), сами хештеги ставятся в описании видеоролика или прямо в заголовке – перед названием ролика.


Поиск видео по хештегу #бизнес

Особых правил нет: хештеги ставятся в описании поста, ограничений на их количество нет. Остальные правила написания хештегов те же, что и обычно.

Telegram

Особо стоит отметить “Телеграм”, хоть это и не совсем соцсеть – скорее мессенджер с элементами соцсети. Но не суть

В Telegram тоже используются хештеги, чтобы привлечь внимание к своей записи. Также их используют в групповых чатах и личной переписке

Удобная фишка: когда вводите хештег в строку поиска, результаты показывают не только посты других каналов и пользователей с этим хештегом, но и ваши личные диалоги, в которых вы употребляли то или иной хештег.

Основные понятия СУБД

Определение 1

База данных является совокупностью сведений (о реальных объектах, процессах и событиях), которые относятся к некоторой теме или задаче. База организована с целью обеспечения удобного представления этой совокупности сведений.

Определение 2

Реляционная база данных – это множество таблиц, взаимосвязанных между собой, причем в каждой из них содержится информация об объектах определенного типа. В каждой строке таблицы содержатся данные об одном объекте (например, человеке, средстве передвижения), а в столбцах таблицы содержатся разные характеристики этих объектов, которые называются атрибутами (например, имена и адреса людей).

Строку таблицы называют записью. Все записи одинаковы по структуре — они состоят из полей, хранящих атрибуты определенного объекта. В каждом поле записи содержится одна характеристика объекта, имеющая строго определенный тип данных (например, текстовая строка или число). Все записи состоят из одних и тех же полей, различаются только значения атрибутов, хранящихся в них.

При работе с данными используют специальные системы, которые называются системами управления базами данных (СУБД).

Определение 3

Система управления базами данных (СУБД) является совокупностью программных и лингвистических средств общего или специального назначения, которые обеспечивают управление созданием и использованием баз данных

К основным функциям СУБД относятся определение данных (описание структуры БД), их обработка и управление.

Замечание 1

Перед тем, как занести данные в таблицу, необходимо определить ее структуру. Под этим подразумевается не только описания наименований и типов полей, но и ряд других характеристик (например, форматы, критерии проверки вводимых данных). Помимо описаний структур таблиц еще задают и связи между таблицами. Связи в реляционных БД определяют по совпадениям значений полей в разных таблицах. К примеру, клиенты и заказы, как правило, связаны отношением один-ко-многим, поскольку 1 записи таблицы со сведениями о клиентах могут соответствовать несколько записей таблицы заказов клиентов.

Рассмотрим отношение между преподавателями и их курсами лекций, отношение типа многие-ко-многим, поскольку 1 преподаватель может вести несколько курсов, в тоже время 1 курс могут вести несколько преподавателей.

И последний тип межтабличных связей — отношение один-к-одному. Этот тип отношений встречается намного реже. Может встречаться лишь в 2 случаях:

  • когда в записи присутствует большое количество полей, в этом случае данные об одном типе объектов делятся на 2 связанные таблицы;
  • когда необходимо установить дополнительные атрибуты для определенного количества записей в таблице, в этом случае создают отдельную таблицу для этих дополнительных атрибутов, связанную отношением один-к-одному с основной таблицей.

Любой СУБД могут выполняться 4 наиболее простые операции с данными:

  • добавление в таблицу одну или несколько записей;
  • удаление из таблицы одной или нескольких записей;
  • обновление значений некоторых полей в одной или нескольких записях;
  • нахождение одной или нескольких записей, соответствующих определенному условию.

Для выполнения указанных операций используют механизм запросов. Результат выполнения запросов бывает представлен отобранным по определенным критериям множеством записей или изменениями в таблицах. Запрос к базе формируется на специально созданном для этих целей языке, называемом языком структурированных запросов (SQL — Structured Query Language).

Определение 4

И еще одна функция СУБД — это управление данными, под которым, как правило, понимается защита данных от несанкционированного доступа, поддержка многопользовательского режима работы с данными и обеспечение целостности и согласованности данных.

При действующей защите от несанкционированного доступа каждый пользователь может видеть и изменять лишь те данные, которые ему позволено видеть или менять. Средства, которые обеспечивают многопользовательскую работу, не разрешают нескольким пользователям в одно время проводить изменения над одними и теми же данными. Средства, обеспечивающие целостность и согласованность данных, не позволяют проводить изменения, которые могут привести к несогласованности данных. К примеру, когда 2 таблицы между собой связаны отношением один-ко-многим, невозможно внести запись в таблицу на стороне многих (подчиненная таблица), если при этом в таблице на стороне главной таблицы отсутствует соответствующая запись.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *