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

1. ОБЩИЕ ТЕОРЕТИЧЕСКИЕ МАТЕРИАЛЫ

1.5. Определение связей между таблицами

Существует несколько типов связей:

связь "один-к-одному";

связь "один-ко-многим;"

связь "многие-ко-многим".

Связь "один-к-одному" представляет собой простейший вид связи данных, когда первичный ключ таблицы является в то же время внешним ключом, ссылающимся на первичный ключ другой таблицы. Такую связь бывает удобно устанавливать тогда, когда невыгодно держать разные по размеру (или по другим критериям) данные в одной таблице, или для того чтобы не занимать оперативную память, если эти данные используются сравнительно редко. Так в БД ФАКУЛЬТЕТ данные о студентах разбиты на две таблицы: в одной из них хранятся результаты экзаменационных сессий (Ведомость) – достаточно часто используемая таблица в учебном процессе, в другой (Учетная карта) – подробная информация о каждом студенте, которая требуется для обработки в течение года относительно редко. В этом случае устанавли­вается связь "один-к-одному" по ключевому полю ФИО.

Связь с отношением "один-ко-многим" является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице "A" могут соответствовать несколько записей в таблице "B", а запись в таблице "B" не может иметь более одной соответствующей ей записи в таблице "A". Например, между таблицами Группы  и Учетная карта существует отношение "один-ко-многим": в каждой группе много студентов, но один студент может учиться только в одной группе. Связь "один-ко-многим" реализуется парой "внешний ключ – первичный ключ", т.е. когда определен внешний ключ, ссылающийся на первичный ключ другой таблицы.

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

 

Рис 2. Реализация связи "многие-ко-многим"

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