Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
db-shpora.doc
Скачиваний:
14
Добавлен:
08.11.2018
Размер:
1.44 Mб
Скачать
  1. Методология проектирования idef1x: зависимые и независимые сущности, степень связи, типы связи, внешние ключи, правила построения диаграмм

Метод IDEF1, разработанный Т.Рэмей (T.Ramey), также основан на подходе П.Чена и позволяет построить модель данных, эквивалентную реляционной модели в третьей нормальной форме. В настоящее время на основе совершенствования методологии IDEF1 создана ее новая версия - методология IDEF1X. IDEF1X разработана с учетом таких требований, как простота изучения и возможность автоматизации. IDEF1X-диаграммы используются рядом распространенных CASE-средств (в частности, ERwin, Design/IDEF). Сущность в методологии IDEF1X является независимой от идентификаторов или просто независимой, если каждый экземпляр сущности может быть однозначно идентифицирован без определения его отношений с другими сущностями. Сущность называется зависимой от идентификаторов или просто зависимой, если однозначная идентификация экземпляра сущности зависит от его отношения к другой сущности (рис. 12).

Рис. 12. Сущности

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

Связь может дополнительно определяться с помощью указания степени или мощности (количества экземпляров сущности-потомка, которое может существовать для каждого экземпляра сущности-родителя). В IDEF1X могут быть выражены следующие мощности связей:

каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров сущности-потомка;

каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;

каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;

каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров сущности-потомка.

Если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, то связь называется идентифицирующей, в противном случае - неидентифицирующей.

Связь изображается линией, проводимой между сущностью-родителем и сущностью-потомком с точкой на конце линии у сущности-потомка. Мощность связи обозначается как показано на рис. 13 (мощность по умолчанию - N). Z – 0 или1, P – 1 или более, N – 0,1 или более

Идентифицирующая связь между сущностью-родителем и сущностью-потомком изображается сплошной линией (рис. 14). Сущность-потомок в идентифицирующей связи является зависимой от идентификатора сущностью. Сущность-родитель в идентифицирующей связи может быть как независимой, так и зависимой от идентификатора сущностью (это определяется ее связями с другими сущностями).

Рис. 14. Идентифицирующая связь

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

Рис. 15. Неидентифицирующая связь

Атрибуты изображаются в виде списка имен внутри блока сущности. Атрибуты, определяющие первичный ключ, размещаются наверху списка и отделяются от других атрибутов горизонтальной чертой (рис. 16).

Рис. 16. Атрибуты и первичные ключи

Сущности могут иметь также внешние ключи (Foreign Key), которые могут использоваться в качестве части или целого первичного ключа или неключевого атрибута. Внешний ключ изображается с помощью помещения внутрь блока сущности имен атрибутов, после которых следуют буквы FK в скобках (рис. 17).

ER-диаграмма должна подчиняться следующим правилам:

каждая сущность, каждый атрибут и каждая связь должны иметь имя (связь супертипа или ассоциативная связь может не иметь имени);

имя сущности должно быть уникально в рамках модели данных;

имя атрибута должно быть уникально в рамках сущности;

имя связи должно быть уникально, если для нее генерируется таблица БД;

каждый атрибут должен иметь определение типа данных;

сущность в необязательной связи должна иметь ключевой атрибут. То же самое относится к сильной сущности в слабой связи, супертипу в связи "супертип-подтип" и необязательной сущности в обязательной (полной) связи;

подтип в связи "супертип-подтип" не может иметь ключевой атрибут;

в ассоциативной или слабой связи может быть только одна ассоциативная (слабая) сущность;

связь не может быть одновременно обязательной, "супертип-подтип" или ассоциативной.

  1. Реляционная модель данных: понятия «отношение», «домен», «кортеж», «атрибут», «схема отношения», «реляционная база данных», «степень отношения», «мощность отношения», «возможный ключ», «первичный ключ», «альтернативный ключ», «внешний ключ».

Реляционная модель данных была предложена Е. Коддом в 1970 г. В основе реляционной модели данных лежит понятие отношения.

Отношение – подмножество декартова произведения одного или более доменов. Домен – множество возможных значений конкретного атрибута. Атрибут – свойство объекта, явления или процесса. Примеры атрибутов: фамилия, имя, отчество, дата рождения. Кортеж – элемент отношения, это отображение имен атрибутов в значения, взятые из соответствующих доменов. Конечное множество кортежей образует отношение. Если отношение создается из n доменов, то каждый кортеж имеет n компонент.

Пример. Пусть, имеется два домена: D1= (0, 1), D2= (a, b, c). Построим декартово произведение доменов D1, D2: Dl x D2= {(0,a),(0,b),(0,c),(l,a),(l,b),(l,c)}. В качестве отношения, построенного на доменах Dl, D2, можно выбрать, например, следующее: R={(0,а),(0,с),(1,b),(1,с)}. Отношение R состоит из четырех кортежей, в каждом кортеже по два элемента, первый выбирают из домена D1, второй – из домена D2.

Следующие наборы терминов эквивалентны: ­ отношение, таблица, файл; ­ кортеж, строка, запись; ­ атрибут, поле.

Поименованный список имен атрибутов отношения называют схемой отношения. Пример схемы: Детали (Номер детали. Название детали, Вид обработки, Вес).Ключевой атрибут в схеме отношения подчеркивают.

Совокупность схем отношений, используемых для представления информации, называется схемой реляционной базы данных.

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

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

Каждое отношение имеет ключ. Пусть R – отношение с атрибутами A1, A2, ..., An. Говорят, что множество атрибутов K=(Ai, Aj, ..., Ak) отношения R является возможным ключом R тогда и только тогда, когда удовлетворяются два условия: 1. Уникальность: в произвольный заданный момент времени никакие два различных кортежа R не имеют одного и того же значения для Ai, Aj, ..., Ak. 2. Минимальность: ни один из атрибутов Ai, Aj, ..., Ak не может быть исключен из K без нарушения уникальности.

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

Пусть в отношении R1 имеется атрибут А, значения которого являются значениями ключевого атрибута В другого отношения R2. Тогда говорят, что атрибут А отношения R1 (атрибут В отношения R2) есть внешний ключ. С помощью внешних ключей устанавливаются связи между отношениями.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]