<<
>>

Разработка концептуальной схемы базы данных

Синтез концептуальной схемы. Концептуальная схема реляционной БД, как правило, описывается диаграммой «сущность—связь» (ERD, ER- диаграмма), предназначенной для разработки модели данных и обеспечивающей стандартный способ определения данных и отношений между ними.
Фактически с помощью ERD осуществляется детализация хранилищ данных проектируемой системы, а также документируются сущности системы и способы их взаимодействия, включая идентификацию объектов (сущностей), свойств этих объектов (атрибутов) и отношений с другими объектами (связей).

ER-диаграммы были введены Ченом (Chen) и получили дальнейшее развитие в работах Баркера (Barker). Рассмотрим нотацию ER-диаграммы, предложенную Баркером, так как в основном она используется при описании КС в современных СУБД (например, в Oracle).

Сущность {Entity). Сущность на ER-диаграмме представляется прямоугольником любого размера, содержащим имя сущности, список имен атрибутов (возможно неполный) и указатели ключевых атрибутов (знак # перед именем атрибута).

Связь (.Relationship). Связь в нотации Баркера является бинарной, т.е. представляет собой линию, соединяющую две сущности (.А и В). Для связи должны быть определены:

имя связи со стороны сущности А и сущности В;

обязательность связи. Если любой экземпляр сущности А обязательно должен быть связан с каким-либо экземпляром сущности В, то прилегающая к прямоугольнику А половина линии — сплошная, в противном случае она — пунктирная.

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

Из имени связи следует, что клиент владеет кредитной картой, а кредитная карта принадлежит клиенту. При включении в БД записи «Клиент» клиент может и не иметь кредитную карту (связь является необязательной — может быть).

При включении в БД записи «Кредитная карта» она должна быть связана с каким-либо клиентом (связь является обязательной — должен быть). При установлении связи многие CASE-средства автоматически добавят в сущность «Кредитная карта» ключ сущности «Клиент». Это обеспечит при включении в БД записи «Кредитная карта» ее связь с записью «Клиент» по атрибуту «Код клиента». Каждый клиент может владеть одной

или более кредитной картой (связь 1 :М). При этом каждая кредитная карта должна принадлежать только одному клиенту (связь М: 1). В табл. 11.1 приведены основные типы связей в нотации Баркера.

Таблица 11.1. Основные типы связей

Окончание табл. 11.1

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

Например, сущности «Физическое лицо» и «Юридическое лицо» имеют общие атрибуты «Адрес», «Телефон», «Факс». Поэтому эти атрибуты можно объединить в сущность-супертип «Клиент». Остальные атрибуты можно описать в сущностях-подтипах. В базе данных будут храниться три сущности: «Клиент», «Физическое лицо», «Юридическое лицо». Основное преимущество использования супертипов и подтипов заключается в том, что СУБД автоматически обеспечивает ссылочную целостность (с помощью триггеров):

после удаления записи-супертипа удаляются все связанные с ней записи-подтипов;

после обновления ключа записи-супертипа обновляются ключи всех связанных с ней записей-подтипов;

после включения записи-подтипа проверяется, есть ли запись- супертип с соответствующим ключом;

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

Следует отметить, что разработка КС БД — процесс творческий. Автоматизировать эту работу практически невозможно, так как при этом требуется учитывать много неформальных параметров. CASE-продукты предоставляют только средства описания КС.

Ниже приведены примеры разработки ER-диаграмм.

Пример описания КС БД с помощью средства CASE*Designer. В CASE*Designer (Oracle) разработка ER-диаграммы ведется в нотации Баркера, рассмотренной выше. Рассмотрим пример разработки КС (ER- диаграммы) БД «БДЗ. Ценные бумаги», которая была введена при описании потоков данных (см. рис. 10.3).

1. Выберите пункт меню Techniques/Entity Diagrammen На экране появится окно Entity Relationship Diagrammer.

Чтобы построить диаграмму, выберите пункт меню Diagram/New. CASE*Designer запросит имя новой ER-диаграммы и размеры страницы, которую вы должны позиционировать в окне Entity Relationship Diagrammer.

2. Инструментальным средством Entity можно добавить к ER-диаграмме сущности, которые на рис. 11.1 обозначены прямоугольниками. При этом сущности «Эмитент» и «Торговая площадка» являются подтипами супертипа «Организация». Затем инструментальными средствами Ml, М:М и 1:1 описывают связи между сущностями.

3. Для ввода имен атрибутов выберите на диаграмме сущностей пункт меню Forms/Attribute Definition. После описания всех атрибутов ER- диаграмма будет иметь вид, представленный на рис. 11.1.

4. Чтобы сохранить ER-диаграмму и выйти из Entity Relationship Diagrammer выполните пункты меню Diagram/Save и Diagram/Quit.

Пример описания концептуальной схемы с помощью пакета Erwin. После запуска пакета Erwin на экране появляется основное окно пакета.

В окне инструментов Erwin Toolbox отображаются следующие кнопки: выбор объекта или группы объектов на ER-диаграмме; перемещение объекта на ER-диаграмме; определение независимой сущности; определение зависимой сущности;

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

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

Следует отметить, что нотация (изображение) ER-диаграммы в пакете Erwin несколько отличается от нотации Баркера. В табл. 11.2—11.4 представлены отличия нотаций Баркера и пакета Erwin.

Таблица 11.2. Отличия в обозначении сущностей

Необходимо отметить, чтобы на ER-диаграмме отображались идентификаторы связи: ее имя, признаки Р и Z (см. табл. 11.3), следует установить опции Option/Show Display Menu, Display/VebPhrase и Display/Cardinality.

Используя инструментальные средства Erwin, можно построить КС БД «БДЗ. Ценные бумаги» на уровне сущностей и связей (рис. 11.2).

Чтобы определить атрибуты какой-либо сущности, следует отметить эту сущность на диаграмме, щелкнуть правой клавишей мыши и выбрать пункт Entity Attribute. После описания атрибутов всех сущностей на экране отображается ER-диаграмма со связями и атрибутами.

Чтобы сохранить ER-диаграмму и выйти из Erwin выберите пункты File/Save и File/Exit.

Таблица 11.4. Отличия в обозначениях супертипов и подтипов

11.3.

<< | >>
Источник: Григорьев Ю.А., Ревунков Г.И.. Банки данных. 2002

Еще по теме Разработка концептуальной схемы базы данных:

  1. 4.5. Право изготовителя базы данных
  2. Глава 9 Создание экспертной базы данных
  3. 1. Понятие программы для ЭВМ, базы данных и топологии интегральной микросхемы и основные правила их охраны
  4. 4.14. СХЕМЫ ЖАНА ПИАЖЕ
  5. СХЕМЫ ВОЗДЕЙСТВИЯ ПРИ КОДИРОВАНИИ ЧЕЛОВЕКА
  6. СУТОЧНАЯ И СЕЗОННАЯ АКТИВНОСТЬ ОРГАНОВ (ЭЛЕМЕНТОВ СХЕМЫ У СИН)
  7. Социологическое обеспечение доказательной базы журналистского текста
  8. Социологическое обеспечение доказательной базы журналистского текста
  9. МОДЕЛЬ ОБРАЗНО-КОНЦЕПТУАЛЬНАЯ
  10. Концептуальная основа программы
  11. 3. "Концептуальный".
  12. 7.1. Современное состояние психологической службы и концептуальные основы ее функционирования