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

Различают три основные модели базы данных - это иерархическая, сетевая и реляционная. Эти модели отличаются между собой по способу установления связей между данными.

8.1. Иерархическая модель базы данных

Иерархические модели баз данных исторически возникли одними из первых. Информация в иерархической базе организована по принципу древовидной структуры, в виде отношений "предок-потомок ". Каждая запись может иметь не более одной родительской записи и несколько подчиненных. Связи записей реализуются в виде физических указателей с одной записи на другую. Основной недостаток иерархической структуры базы данных - невозможность реализовать отношения "многие-ко-многим ", а также ситуации, когда запись имеет несколько предков.

Иерархические базы данных . Иерархические базы данных графически могут быть представлены как перевернутое дерево , состоящее из объектов различных уровней. Верхний уровень (корень дерева ) занимает один объект , второй - объекты второго уровня и так далее.

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

Рис. 6. Иерархическая база данных

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

Атрибут (элемент данных)

Наименьшая единица структуры данных. Обычно каждому элементу при описании базы данных присваивается уникальное имя. По этому имени к нему обращаются при обработке. Элемент данных также часто называют полем.

Запись

Именованная совокупность атрибутов. Использование записей позволяет за одно обращение к базе получить некоторую логически связанную совокупность данных. Именно записи изменяются, добавляются и удаляются. Тип записи определяется составом ее атрибутов. Экземпляр записи - конкретная запись с конкретным значением элементов.

Групповое отношение

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

Пример. Рассмотрим следующую модель данных предприятия (см. рис. 7): предприятие состоит из отделов, в которых работают сотрудники. В каждом отделе может работать несколько сотрудников, но сотрудник не может работать более чем в одном отделе.

Поэтому, для информационной системы управления персоналом необходимо создать групповое отношение, состоящее из родительской записи ОТДЕЛ (НАИМЕНОВАНИЕ_ОТДЕЛА, ЧИСЛО_РАБОТНИКОВ) и дочерней записи СОТРУДНИК (ФАМИЛИЯ, ДОЛЖНОСТЬ, ОКЛАД). Это отношение показано на рис. 7 (а) (Для простоты полагается, что имеются только две дочерние записи).

Для автоматизации учета контрактов с заказчиками необходимо создание еще одной иерархической структуры: заказчик - контракты с ним - сотрудники, задействованные в работе над контрактом. Это дерево будет включать записи ЗАКАЗЧИК (НАИМЕНОВАНИЕ_ЗАКАЗЧИКА, АДРЕС), КОНТРАКТ(НОМЕР, ДАТА,СУММА), ИСПОЛНИТЕЛЬ (ФАМИЛИЯ, ДОЛЖНОСТЬ, НАИМЕНОВАНИЕ_ОТДЕЛА) (рис. 7b).

Рис. 7. Пример иерархической БД

Из этого примера видны недостатки иерархических БД :

Частично дублируется информация между записями СОТРУДНИК и ИСПОЛНИТЕЛЬ (такие записи называют парными), причем виерархической модели данных не предусмотрена поддержка соответствия между парными записями.

Иерархическая модель реализует отношение между исходной и дочерней записью по схеме 1:N, то есть одной родительской записи может соответствовать любое число дочерних.

Допустим теперь, что исполнитель может принимать участие более чем в одном контракте (т.е. возникает связь типа M:N). В этом случае в базу данных необходимо ввести еще одно групповое отношение , в котором ИСПОЛНИТЕЛЬ будет являться исходной записью, а КОНТРАКТ - дочерней (рис. 7 c). Таким образом, мы опять вынуждены дублировать информацию.

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

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

Описание выбранной предметной области в терминах модели данных позволяет получить модель БД. Обычно выделяют три уровня моделей БД .

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

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

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

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

Однако вернемся к рассмотрению моделей данных. Разные авторы приводят несколько различающиеся перечни существующих моделей данных. Например, в предлагается такой список моделей данных и периодов времени, когда в их разработке были получены основные результаты:

  • иерархическая (англ. hierarchical), конец 1960-х и 1970-е гг.;
  • сетевая (англ. network), 1970-е гг.;
  • реляционная (англ. relational), 1970-е и начало 1980-х гг.;
  • "сущность – связь" (англ. entity – relationship), 1970-е гг.;
  • расширенная реляционная (англ. extended relational), 1980-е гг.;
  • семантическая (англ. semantic), конец 1970-х и 1980-е гг.;
  • объектно-ориентированная (англ. object-oriented), конец 1980-х – начало 1990-х гг.;
  • объектно-реляционная (англ. object-relational), конец 1980-х – начало 1990-х гг.;
  • полуструктурированная (англ. semi-structured), с конца 1990-х гг. до настоящего времени.

Первыми появились модели данных, основанные на теории графов, – иерархическая и сетевая. Более подробно они рассмотрены ниже. Следующей появилась разработанная Э. Коддом (Edgar Codd) реляционная модель данных, основанная на математической теории множеств. На сегодняшний день она является самой распространенной, поэтому будет рассматриваться наиболее подробно. Вопросам, связанным с реляционной моделью и логическим проектированием реляционных баз данных, посвящены главы 4 и 5.

Модель "сущность – связь" была предложена П. Ченом (Peter Chen) в 1976 г. в качестве унифицированного способа описания предметной области. Как самостоятельная модель данных (в соответствии с приведенным выше определением) она развития не получила, но стала основой для создания инфологических моделей БД. Этап инфологического проектирования рассмотрен в главе 6.

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

Объектно-ориентированная и объектно-реляционная модели данных появились в результате распространения объектно-ориентированного подхода в программировании. Объектная модель данных предлагает рассматривать БД как множество объектов, обладающих свойствами инкапсуляции, наследования и т.д. В 1989 г. был опубликован "Манифест систем объектно-ориентированных баз данных", а в 1991 г. образован консорциум ODMG (от англ. Object Data Management Group), который занялся разработкой стандартов. В 2000 г. была опубликована версия стандарта The Object Data Standard: ODMG 3.0, а в 2001 г. группа прекратила свою деятельность. Примерно в то же время велась активная работа по адаптации реляционной модели к требованиям объектно-ориентированного подхода к разработке ПО, что привело к появлению объектно-реляционной модели данных. Позднее объектные расширения были введены в стандарт языка SQL.

К полуструктурированным относят данные, в которых можно выделить некоторую структуру, но она недостаточно строгая по сравнению с реляционными структурами данных (или структурами других традиционных моделей данных) . Наиболее ярким примером полуструктурированных данных являются XML-документы (от англ. extensible Markup Language – расширяемый язык разметки). Действительный (англ. valid) XML-до- кумент должен соответствовать определенному формату описания (схеме), где заданы структура документа, допустимые названия элементов, атрибутов и т.д. Формат XML широко используется для обмена данными между приложениями, и его поддержка обеспечивается многими СУБД.

Лекция 5

Базы данных информационных систем

База данных. Классификация и характеристика СУБД.

Основные модели баз данных.

Базы данных в экономических системах

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

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

Задачами СУБД являются:

Хранение информации в структурированном виде;

Обновление информации по мере необходимости;

Поиск нужной информации по определенным критериям;

Выдача информации пользователю в удобном для него виде;

Устранение избыточности данных;

Поддержка языков БД.

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



По технологии работы с базами данных существуют:

Централизованные СУБД;

Распределенные СУБД.

Централизованная СУБД - система управления базой данных, которая хранится в памяти одной вычислительной системы.

Системы централизованных баз данных с сетевым доступа предполагают две основные архитектуры:

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

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

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

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

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

Безопасность данных в базе данных достигается:

¾ шифрованием прикладных программ;

¾ шифрованием данных;

¾ защитой данных паролем;

¾ ограничением доступа к базе данных.

Основные модели баз данных

Основное различие между моделями баз данных состоит в характере описания взаимосвязи и взаимодействия между объектами и атрибутами базы данных. Связи объектов могут быть следующих типов:

¾ "один к одному";

¾ "один ко многим";

¾ "многие ко многим".

"Один к одному" - это взаимно однозначное соответствие, которое устанавливается между одним объектом и одним атрибутом. Связь "один-к-одному" определяет такое отношение между таблицами, когда каждой записи в подчиненной таблице соответствует только одна запись в главной таблице. Наличие связей между таблицами "один-к-одному" обычно не говорит о хорошей структуре базе данных, поскольку свидетельствует о том, что две таблицы имеют полностью совпадающие поля, а это ведет к нерациональному расходу дискового пространства.

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

Связь типа "многие-ко-многим" выражает такое отношение между таблицами, когда многие записи одной таблицы могут быть связаны со многими записями другой таблицы.

Иерархическая модель баз данных (ИМД) основана на графическом способе и предусматривает поиск данных по одной из ветвей «дерева», в котором каждая вершина имеет только одну связь с вершиной более высокого уровня. Для осуществления поиска необходимо указать полный путь к данным, начиная с корневого элемента.

Рис. 1 – Иерархическая модель баз данных

Сетевая модель баз данных (СМД) также основана на графическом способе, но допускает усложнение «дерева» без ограничения количества связей, входящих в вершину. Это позволяет строить сложные поисковые структуры.

Рис. 2 – Сетевая модель баз данных

Реляционная модель баз данных (РМД) реализует табличный способ.

В реляционной модели базы данных взаимосвязи между элементами данных представляются в виде двумерных таблиц, называемых отношениями .

Отношения обладают следующими свойствами :

¾ каждый элемент таблицы представляет собой один элемент данных (повторяющиеся группы отсутствуют);

¾ элементы столбца имеют одинаковую природу, и столбцам однозначно присвоены имена;

¾ в таблице нет двух одинаковых строк;

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

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

Достоинства реляционной модели :

¾ простота построения;

¾ доступность понимания;

¾ возможность эксплуатации базы данных без знания методов и способов ее построения;

¾ независимость данных;

¾ гибкость структуры и др.

Недостатки реляционной модели :

¾ низкая производительность по сравнению с иерархической и сетевой модели;

¾ сложность программного обеспечения;

¾ избыточность элементов.

В последние годы все большее признание и развитие получают объектные базы данных (ОБД), появление которых обусловлено развитием объектно-ориентированного программирования.

Объектом называют почти все, что представляет интерес для решения поставленной задачи на компьютере. Это может быть экранное окно, кнопка в окне поле для ввода данных, пользователь программы, сама программа и т.д. Тогда любые действия можно привязать к такому объекту, а также описать, что произойдет с объектом при выполнении опреде6ленных действий (например, при „нажатии“ кнопки). Многократно используемый объект можно сохранить и применять его в различных программах.

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

Свойство - это характеристика, с помощью которой описывается внешний вид и работа объекта.

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

Метод - это функция или процедура, управляющая работой объекта при его реакции на событие.

Объекты могут быть как визуальными, т.е. которые можно увидеть на экране дисплея (окно, пиктограмма, текст и т.д.), так и невизуальные (например, программа решения какой-либо функциональной задачи).

Иерархическая модель данных

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

Иерархическую БД образует каталог файлов, хранимых на диске; дерево каталогов, доступное для просмотра в Total Commander, - наглядная демонстрация структуры такой БД и поиска в ней нужного элемента. Такой же БД является родовое генеалогическое дерево.

Сетевая модель данных

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

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

Реляционная модель данных

В реляционной БД под записью понимается строка прямоугольной таблицы. Элементы записи образуют столбцы этой таблицы (поля). Все элементы в столбце имеют одинаковый тип (числовой, символьный), а каждый столбец - неповторяющееся имя. Одинаковые строки в таблице отсутствуют.

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

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

Любой тип можно свести к реляционному.

Типы данных

Тип данных определяет множество значений, которые может принимать данное поле в различных записях.

Основные типы данных в современных БД:

    числовой;

    текстовый;

  • дата / время;

    денежный;

    логический;

Ключи

    Суперключ - это одно или несколько полей таблицы, которые однозначно определяют каждую строку в таблице

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

    Первичный ключ – это потенциальный ключ, выбранный, для однозначной идентификации каждой строки в таблице; обычно выбирают наиболее простой для ввода потенциальный ключ, как правил, числовой.

Ключевое поле таблицы в СУБД Access – это первичный ключ таблицы.

Виды реляционных отношений

    один-к-одному;

Каждому значению первичного ключа в главной таблице соответствует одна или не одной записи в подчиненной таблице.

Отношения этого типа используются не очень часто, поскольку большая часть сведений, связанных таким образом, может быть помещена в одну таблицу. Отношение «один-к-одному» может использоваться для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.

    один-ко-многим;

Каждому значению первичного ключа в главной таблице соответствует одна, несколько или ни одной записи в подчиненной таблице.

Отношение «один-ко-многим» является наиболее часто используемым типом связи между таблицами.

    многие-ко-многим.

При отношении «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B несколько записей в таблице A. Отношение «многие-ко-многим» представляет собой два отношения «один-ко-многим» с третьей таблицей.

Организация межтабличных связей

    один-к-одному – таблицы, связываются по их первичным ключам (первичные ключи обеих таблиц устанавливают одинаковыми);

    один-ко-многим –главная таблица (один) связывается по первичному ключу с подчиненной таблицей (многие) по внешнему ключу (это первичный ключ главной таблицы, вставленный в подчиненную таблицу)

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

Пример организации БД

Условия целостности данных

Условие целостности служит для обеспечения соответствия записей в подчиненной таблице записям главной таблицы, т.е. удалять данные из ключевого поля главной таблицы нельзя.

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

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

Рассмотрим три основных типа моделей данных: иерархическую, сетевую, реляционнную и объектно-ориентированную.

Иерархическая модель данных. Иерархическая структура представляет совокупность элементов, связанных между собою по определенным правилам. Объекты, связанные иерархическими отношениями, образовывают ориентированный граф (перевернутое дерево). К основным понятиям иерархической структуры относятся: уровень, элемент (узел), связь. Иерархическую модель организовывает данные в виде древовидной структуры. Узел - это совокупность атрибутов данных, которые описывают некоторый объект. На схеме иерархического дерева узлы имеют вид вершин графа. Каждый узел на более низком уровне связан только с одним узлом, который находится на более высоком уровне. Иерархическое дерево имеет только одну вершину (корень дерева), которая не подчинена никакой другой вершине. Зависимые (подчиненные) узлы находятся на втором, третьем и других уровнях. Количество деревьев в базе данных определяется числом корневых записей.

Сетевая модель данных.

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

Реляционная модель данных. Понятие реляционный (англ. relation - отношение) связан с разработками известного американского специалиста в области систем баз данных Э.Ф. Кодда. Эти модели характеризуются простотой структуры данных, удобной для пользователя формой представления в виде таблиц и возможностью использования аппарата алгебры отношений и реляционного вычисления для обработки данных.

На языке математики отношение определяется таким образом. Пусть задано n множеств D1,D2, ...,Dn. Тогда R есть отношение над этими множествами, если R есть множеством упорядоченных наборов вида , где d1 - элемент с D1 , d2 - элемент с D2 , ... , dn - элемент с Dn. При этом наборы вида называются кортежами, а множества D1,D2, ...Dn - доменами. Каждый кортеж состоит из элементов, которые выбираются из своих доменов. Эти элементы называются атрибутами, а их значения - значениями атрибутов.

Итак, реляционнная модель ориентирована на организацию данных в виде двумерных таблиц, любая из которых имеет следующие свойства:

Каждый элемент таблицы - это один элемент данных;

Все столбцы в таблицы - однородные, т.е все элементы в столбце имеют одинаковый тип (символьный, числовой и т.п.);

Каждый столбец носит уникальное имя;

Одинаковые строки в таблицы отсутствуют.

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

Следующие термины являются эквивалентными:

отношение , таблица, файл (для локальных БД );

кортеж, строка , запись;

атрибут, столбик, поле.

Объектно-ориентированные БД объединяют в себе две модели данных, реляционную и сетевую, и используются для создания крупных БД со сложными структурами данных.

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

БД считается нормализованной , если выполняются следующие условия:

Каждая таблица имеет главный ключ;

Все поля каждой таблицы зависят только от главного ключа;

В таблицах отсутствуют группы повторных значений.

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

Существуют четыре типа отношений между таблицами: один к одному , один ко многим, много к одному, много ко многим .

Отношение один к одному означает, что каждая запись в одной таблице соответствует только одной записи в другой таблице.

Отношение один ко многим означает, что одна запись из первой таблицы может быть связана более чем с одной записью из другой таблицы.

Главная таблица – это таблица, которая содержит первичный ключ и составляет часть один в отношении один ко многим .

Внешний ключ – это поле, содержащее такой же тип информации в таблице со стороны много .

Практическая работа