YourLib.net
Твоя библиотека
Главная arrow Базы данных. Проектирование и создание (С.М. Диго) arrow 4.6.3. Дополнительные свойства атрибутов. Созадание ключей и инверстных входов
4.6.3. Дополнительные свойства атрибутов. Созадание ключей и инверстных входов

4.6.3. Дополнительные свойства атрибутов. Созадание ключей и инверстных входов

   При создании реляционных баз данных по отдельным полям или совокупностям полей могут быть построены индексы. По умолчанию по полям, выбранным в качестве первичного ключа, всегда строится уникальный индекс. По полям, которые являются альтернативными ключами таблицы, также можно построить уникальные индексы. По тем полям, по которым часто осуществляется выборочный поиск, для ускорения поиска также целесообразно произвести индексирование. Если поле, по которому производится индексирование, является неуникальным, то оно называется инверсным входом (Inversion Entry).
   Понятия ключа (первичного, альтернативного, внешнего) и индексирования не присущи предметной области. Понятие ключа относится к категориям реляционной модели данных, а индексирование - это способ логического упорядочения данных. Однако в ERWin и некоторых других CASE-системах эти вопросы решаются на стадии концептуального проектирования.
   В ERWin для задания первичного или альтернативного ключа, а также инверсного входа можно, позиционировавшись на значке сущности, нажать правую кнопку мыши и в появившемся контекстном меню (см. рис. 4.14) выбрать позицию Key Group. Либо выбрать вкладку Key Group в окне Attributes (рис. 4.20).

Рис. 4.20. Окно Attributes. Выбор вкладки Key Group 

Рис. 4.20. Окно Attributes. Выбор вкладки Key Group

   После этого в окне Key Groups (рис. 4.21) следует нажать кнопку New.

Рис. 4.21. Создание новой ключевой группы (Key Group). Шаг 1 

Рис. 4.21. Создание новой ключевой группы (Key Group). Шаг 1

   В появившемся окне New Key Group (рис. 4.22) следует выбрать тип ключевой группы (Key Group Type). Предположим, что мы хотим создать составной инверсный вход, включающий атрибуты Фамилия, Имя, Отчество. Тип ключевой группы будет соответственно определен как Inversion Entry.

 Рис. 4.22. Создание инверсного входа

Рис. 4.22. Создание инверсного входа

   После нажатия на кнопку OK появится окно Key Groups (рис. 4.23) с новой строкой, соответствующей вновь создаваемой группе. Далее в списке доступных атрибутов (Available Attributes) надо позиционироваться на первый из тех атрибутов, которые должны входить в состав создаваемой группы, и, воспользовавшись кнопкойКнопка, переместить его в окно Key Group Members. Так последовательно надо поступить и с другими атрибутами, входящими в данную группу.

Рис. 4.23. Создание инверсного входа. Определение состава группы

Рис. 4.23. Создание инверсного входа. Определение состава группы

Ключевой группе можно дать новое имя. Для этого следует воспользоваться кнопкой Rename (переименовать). В появившемся окне Rename Key Group (рис. 4.24) надо ввести желаемое имя группы.

Рис. 4.24. Задание имени группы 

Рис. 4.24. Задание имени группы

   После выполненных шагов окно Key Groups будет иметь вид, представленный на рис. 4.25.

 Рис. 4.25. Создание инверсного входа. Вид окна после выполнения всех шагов

Рис. 4.25. Создание инверсного входа. Вид окна после выполнения всех шагов

   Чтобы на схеме, отображающей ER-модель, были видны признаки первичного и альтернативного ключа, а также инверсного входа, надо в меню Format/Entity Display (рис. 4.26) выбрать соответствующие позиции списка.

 Рис. 4.26. Задание параметров отображения сущности

Рис. 4.26. Задание параметров отображения сущности

   После этого сущность Сотрудник будет иметь вид, представленный на рис. 4.27.

 Рис. 4.27. Сущность «Сотрудник». Задан первичный ключ и один составной инверсный вход

Рис. 4.27. Сущность «Сотрудник». Задан первичный ключ и один составной инверсный вход

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

Рис. 4.28. Сущность «Сотрудник». Задан первичный ключ и два инверсных входа 

Рис. 4.28. Сущность «Сотрудник». Задан первичный ключ и два инверсных входа

   Приведенные выше примеры демонстрируют только возможности системы. Вопросы проектирования (в частности, когда и какие инверсные ключи следует создавать) - не рассматриваются.
   Аналогично можно создать альтернативный ключ: в окне Key Groups (см. рис. 4.21) нажать кнопку New; в окне New Key Group (см. рис. 4.22) следует выбрать тип ключевой группы (Key Group Type) - Alternative Key. На рис. 4.29 в качестве примера был создан альтернативный ключ, включающий атрибуты Фамилия-Имя-Отчество-Дата рождения.

 Рис. 4.29. Создание составного альтернативного ключа

Рис. 4.29. Создание составного альтернативного ключа

   После этого сущность Сотрудник примет вид, представленный на рис. 4.30.

Рис. 4.30. Сущность «Сотрудник». Задан первичный ключ, альтернативный ключ и инверсный вход 

Рис. 4.30. Сущность «Сотрудник». Задан первичный ключ, альтернативный ключ и инверсный вход

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

 
< Пред.   След. >