Таблицы и связи между ними. Первичные и внешние ключи — КиберПедия 

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

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Таблицы и связи между ними. Первичные и внешние ключи

2017-09-30 249
Таблицы и связи между ними. Первичные и внешние ключи 0.00 из 5.00 0 оценок
Заказать работу

Основным структурным компонентом базы данных является таблица. При определении состава таблиц следует руководствоваться правилом: в каждой таблице должны храниться данные только об одном классе объектов. Например, в одной и той же таблице нельзя хранить анкетные данные студентов и наименования изучаемых дисциплин, т.к. это свойства разных классов объектов. Если в базе данных должна содержаться информация о разных классах объектов, то она должна быть распределена по отдельным таблицам.

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

таблица Факультеты, содержащая информацию о факультетах, на которых обучаются студенты;

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

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

таблица Дисциплины, содержащая информацию об учебных дисциплинах, по которым фиксируется успеваемость студентов;

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

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

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

При связи типа “один-к-одному” каждой записи в одной таблице соответствует не более одной записи в другой таблице. Этот вид связи встречается довольно редко, в основном в тех случаях, когда часть информации об объекте либо редко используется, либо является конфиденциальной (такая информация хранится в отдельной таблице, которая защищена от несанкционированного доступа). Связь “один-к-одному” устанавливается по одинаковому первичному ключу обеих таблиц.

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

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

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

Так, например, таблица Оценки реализует связь “многие-ко-многим”между сущностями Студенты и Дисциплины путем замены ее на две связи “один-ко-многим”: Студенты–Оценки и Дисциплины–Оценки.

 


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

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

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

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.006 с.