Главная Обратная связь Поможем написать вашу работу!

Дисциплины:

Архитектура (936)
Биология (6393)
География (744)
История (25)
Компьютеры (1497)
Кулинария (2184)
Культура (3938)
Литература (5778)
Математика (5918)
Медицина (9278)
Механика (2776)
Образование (13883)
Политика (26404)
Правоведение (321)
Психология (56518)
Религия (1833)
Социология (23400)
Спорт (2350)
Строительство (17942)
Технология (5741)
Транспорт (14634)
Физика (1043)
Философия (440)
Финансы (17336)
Химия (4931)
Экология (6055)
Экономика (9200)
Электроника (7621)






Получение реляционной схемы из ER-диаграммы. Пошаговый алгоритм (без учета наследования и взаимно исключающих связей)



  1. Каждый простой тип сущности превращается в таблицу.

Имя сущности – имя таблицы. Экземпляр – строка.

Простым типом сущности называется тип сущности, не являющийся подтипом и не имеющий подтипов (см. опр. в Б36).

  1. Каждый атрибут => столбец таблицы
  2. Компоненты уникального идентификатора сущности превращаются в первичный ключ таблицы.

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

  1. Связи «многие к одному» (и «один к одному») становятся внешними ключами, т.е. образуется копия уникального идентификатора сущности на конце связи «один», и соответствующие столбцы составляют внешний ключ таблицы, соответствующей типу сущности на конце связи «многие».

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

Если между двумя типами сущности A и B имеется связь «один к одному», то соответствующий внешний ключ по желанию проектировщика может быть объявлен как в таблице A, так и в таблице B. Чтобы подчеркнуть единственность в определении таблицы, соответствующий столбец должен быть специфицирован как возможный ключ таблицы.

  1. связь «многие ко многим» между типами сущности A и B создается дополнительная таблица AB с двумя столбцами, один из которых содержит уникальные идентификаторы экземпляров сущности A, а другой – уникальные идентификаторы экземпляров сущности B.

 

Наследование сущностей в ER-модели. Примеры. Отображение диаграммы с наследованием в реляционную схему.

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

ER-модели не ограничивает подтипизацию, обычно оказывается достаточно 2-3 уровней.

Простой тип – не является подтипом и не имеет подтипов.

Особенности механизма наследования:



  1. Включение: для любого b Є Bi => b Є А
  2. Отсутствие собственных экземпляров у супертипа: для любого a Є A => a Є Bi.
  3. Разъединенность подтипов: для любого b Є Bi => b !Є Bj.

Пример:

Супертипы и подтипы.

    1. Общая таблица для всех подтипов

A

T a1 a2 aM b11 b1k1 bnkn
‘B1 X X X X X X X X X X X NULL NULL NULL NULL
                               

T-признак подтипа, X-некоторое значние.

Для супертипа верно что (см след билет):

  1. для любого b Є Bi => b Є А
  2. для любого a Є A => a Є Bi
  3. для любого b Є Bi => b !Є Bj

Извлечь объекты супертипа: PROJECT A{a1…am, bi1…bik}WHERE t =’Bi’

    1. Отдельная таблица для каждого подтипа

Собрать супертип: PROJECT B1{a1…am}UNION…UNION Bn{a1…am}

Достоинства а.

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

Недостатки а.

  • усложнение программного кода приложений
  • общая таблица потенциально может стать узким местом при многопользовательском режиме
  • расход внешней памяти (много NULL)

Достоинства б.



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

Недостатки б.

  • в общем случае требуется слишком много отдельных таблиц;
  • усложнение доступа к экземплярам супертипа;

 


 


Просмотров 705

Эта страница нарушает авторские права




allrefrs.ru - 2021 год. Все права принадлежат их авторам!