Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Соответствие записей определяется первичным и внешним ключом




Т2

Т1

Определение внешнего ключа

Понятие внешнего ключа

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

Внешний ключ (foreign key, обозначается fk) – это столбец таблицы Т2, любое значение которого должно обязательно совпадать с одним из значений первичного ключа некоторой другой таблицы Т1.

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

Код_Факультета Факультет
  ЭФ
2 ВМК
  ФФ
  ФФ
  ММ

 

Код_Факультета Фамилия
  Четин
  Яшин
  Круглов
  Самарин
  Ракунов
  Певцов
  Москвин
  Романов
  Паршин

 

Рис.7.

Все значения поля «Код Факультета» Т2 соответствуют значениям поля «Код Факультета» Т1.

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

Реляционные отношения между таблицами

Между двумя и более таблицами могут существовать отношения подчиненности.

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

Существует три разновидности связи между таблицами БД:

  • один к одному
  • один ко многим
  • многие ко многим

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

Отношение «один к одному» это когда одной записи таблицы Т1 (родительской) соответствует одна запись таблицы Т2 (дочерней)(Рис.8)

 

Код Фамилия Отдел   Код Год рожд. Паспорт Адрес
  Павлов       45 765871 Москва …..
  Рачков       58 547365 МО. Подольск…
  Симонов       76 645346 Москва …..

 

Рис.8.

 

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

Связь «один к одному» может быть жесткой и не жесткой

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

Данный вид отношений («один к одному») применяется редко.

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

Отношение «один ко многим» имеет место когда одной записи таблицы Т1 (родительской) соответствует несколько записей таблицы Т2 (дочерней)(Рис.9.)

На рис. 9. представлена БД состоящая из двух таблиц «Факультеты» - родительская и «Студенты» - дочерняя.

В родительской таблице поле Код_Факультета является первичным ключом, а в дочерней одноименное поле является внешним ключом. Между этими таблицами должны быть соблюдены правила целостности (смотри ниже)

Как видим, одной записи родительской таблицы соответствует несколько записей дочерней таблицы. Рис. 9. Не исключено, что в дочерней таблице может и не быть записей соответствующих записи в родительской таблице (например: нет студентов на химическом факультете (ХФ)).


Факультеты Студенты

 
Код_Факультета

Факультет   Код_Факультета Фамилия
  ЭФ     Четин
  ВМК     Яшин
  ФФ     Круглов
  ФФ     Самарин
  ММ     Ракунов
  ХФ     Певцов
        Москвин
        Романов
        Паршин

Рис.9.

 

Различают две разновидности отношений «один ко многим»:

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

 

Связь «один ко многим» является самой распространенной и позволяет создавать иерархическую структуру данных.

 

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

Отношение «многие ко многим» имеет место когда:

  1. записи в родительской таблице может соответствовать несколько записей в дочерней таблице.
  2. записи в дочерней таблице может соответствовать несколько записей в родительской таблице.

Учебные группы Преподаватели

Группа Предмет N препод.   N препод. Фамилия
Гр1 Русский     Михайлов
Гр2 Русский       Паршин
Гр1 Литература     Румянцев
Гр3 Философия       Смирнов
Гр1 История       Астахов

 

Рис.10.

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

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





Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 541; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.