Отношение «один–ко–многим»




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

Отношение «один–к–одному»

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

Отношение «многие–ко–многим»

Отношение «многие–ко–многим» применяется в следующих случаях:

  • одной записи в главной таблице соответствует более одной записи в подчиненной;
  • одной записи в подчиненной таблице соответствует более одной записи в главной.

Каждую связь «многие–ко–многим» в реляционной базе данных необходимо заменить на связь «один–ко–многим» (одну или более) с помощью введения дополнительных таблиц.

 

 

Задание

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

Порядок выполнения работы

1. Возьмем исходную таблицу Supplier (см. рис. 2.1.) и разделим ее на

Рис. 2.1. Таблица Supplier

две таблицы: Supp2_1 и Supp2_2 (см. рис. 2.2.,23.).

 

Рис. 2.2. Таблица Supp2_1

Рис. 2.3. Таблица Supp2_2

2. Откроем таблицу Supp2_1 в режиме конструктора. Щелкнув правой кнопкой по полю перед именем поля CONSUMER_NAME, выберем пункт меню «Ключевое поле» (Рис. 2.4.). Этим мы обеспечим уникальность значений в поле CONSUMER_NAME – каждый поставщик упомянут не более одного раза.

 

Рис. 2.4. Изменение ключевого поля

 

3. Выберем на панели инструментов, в меню «Конструктор» пункт «Схема данных»:

При этом откроется окно «Добавление таблицы» (рис. 2.4.).

Рис. 2.5. Добавление таблицы в схему данных

Нажимая на кнопку «Добавить», добавим в схему данных таблицы Supp2_1 и Supp2_2. Затем нажмем «Закрыть».

 

4. В открывшейся схеме данных нажмем левой кнопкой на поле CONSUMER_NAME таблицы Supp2_1 и «перетащим» связь к полю CONSUMER_NAME таблицы Supp2_2. При этом откроется окно «Изменение связей». Проставим «галочки» в пунктах «Обеспечение целостности данных», «Каскадное обновление связанных полей» и «Каскадное удаление связанных записей» (рис.2.6.). Таким образом, при удалении поставщика из главной таблицы (в нашем примере Supp2_1), все записи, содержащие его имя, будут удалены и из подчиненной таблицы (в нашем примере Supp2_2).

Рис. 2.6. Окно «Изменение связей»

Нажав кнопку «Создать», завершим создание связи «один-ко-многим» (рис. 2.7.).

Если в окне «Изменение связей» выбрать только пункт «Обеспечение целостности данных», то каскадного обновления не будет, но СУБД не позволит вводить в поле CONSUMER_NAME таблицы Supp2_2 значение, которого нет в таблице Supp2_1.

 

 

Рис. 2.7. Связь «один-ко-многим»

 

Содержание отчёта

  • титульный лист
  • задание
  • распечатки экрана СУБД MS Access, показывающие:
    • исходную таблицу
    • полученные таблицы и их структуры
    • окно изменения связей
    • схему данных со связью «один-ко-многим»

 

Лабораторная работа №3



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2022-11-01 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: