Лабораторная работа № 5
1. ОБЩИЕ ТЕОРЕТИЧЕСКИЕ МАТЕРИАЛЫ
1.5. Определение связей между таблицами
Существует несколько типов связей:
связь "один-к-одному";
связь "один-ко-многим;"
связь "многие-ко-многим".
Связь "один-к-одному" представляет собой простейший вид связи данных, когда первичный ключ таблицы является в то же время внешним ключом, ссылающимся на первичный ключ другой таблицы. Такую связь бывает удобно устанавливать тогда, когда невыгодно держать разные по размеру (или по другим критериям) данные в одной таблице, или для того чтобы не занимать оперативную память, если эти данные используются сравнительно редко. Так в БД ФАКУЛЬТЕТ данные о студентах разбиты на две таблицы: в одной из них хранятся результаты экзаменационных сессий (Ведомость) – достаточно часто используемая таблица в учебном процессе, в другой (Учетная карта) – подробная информация о каждом студенте, которая требуется для обработки в течение года относительно редко. В этом случае устанавливается связь "один-к-одному" по ключевому полю ФИО.
Связь с отношением "один-ко-многим" является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице "A" могут соответствовать несколько записей в таблице "B", а запись в таблице "B" не может иметь более одной соответствующей ей записи в таблице "A". Например, между таблицами Группы и Учетная карта существует отношение "один-ко-многим": в каждой группе много студентов, но один студент может учиться только в одной группе. Связь "один-ко-многим" реализуется парой "внешний ключ – первичный ключ", т.е. когда определен внешний ключ, ссылающийся на первичный ключ другой таблицы.
В таблицах, связанных с отношением "многие-ко-многим", одной записи в каждой таблице могут соответствовать несколько записей в другой таблице. Для установления отношения "многие-ко-многим" необходимо создать третью (связующую) таблицу и включить в нее ключевые поля из обеих таблиц. В нашем примере отсутствуют связи такого типа. Продемонстрировать такую связь можно на примере работы библиотеки. В одной таблице содержатся данные о книгах (каждая книга может быть в нескольких экземплярах), в другой – данные о читателях. Каждый читатель может иметь на руках несколько книг, книга одного и того же названия может быть у нескольких читателей. Поэтому создается промежуточная таблица – абонентская карта (рис 2).
Рис 2. Реализация связи "многие-ко-многим"
Итак, мы рассмотрели основные этапы проектирования базы данных. Факультет, ориентированной на реализацию многих функций, поддерживающих «идеализированный» учебный процесс на факультете ВУЗа.