Риc. 3.2.3.4. Страница имен ролей — КиберПедия 

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

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

Риc. 3.2.3.4. Страница имен ролей

2017-10-16 285
Риc. 3.2.3.4. Страница имен ролей 0.00 из 5.00 0 оценок
Заказать работу

 

По умол­ча­нию в списке атрибутов показывается только имя роли. Если выпол­нить команду Entity Display/Rolename/Attribute из контекстного меню диаг­рам­мы, то будет показываться полное имя в виде:

<имя роли>.<базовое имя атрибута> (рисунок 3.2.3.5).


Имена ролей обязательны, если несколько атрибутов имеют одина­ко­вую область значений, но разный смысл (рисунок 3.2.3.5).

Рисунок 3.2.3.5. Пример обязательности имен ролей

 
 

Рекурсивная связь (одна и та же сущность одновременно является и родительской, и дочерней) требует присвоения имен ролей (рисунок 3.2.3.6).

Рисунок 3.2.3.6. Пример иерархической рекурсивной связи

 

Связь вида Руководит/Подчиняется, позволяющая хранить древо­видную ие­рар­хию подчиненности сотрудников, называется иерархической ре­кур­сией.

 
 

Сетевая рекурсия (рисунок 3.2.3.7) предполагает отношение «мно­гие‑ко‑мно­гим». Для разрешения такой связи создается новая сущ­ность.

Рисунок 3.2.3.7. Пример сетевой рекурсивной связи

 

Правила ссылочной целостности устанавливаются на странице RI Actions (рисунок 3.2.3.8).

 
 

Рисунок 3.2.3.8. Установка правил ссылочной целостности связи

 

Контроль целостности связей осуществляется автоматически СУБД согласно правилам, которые устанавливаются при проектиро­ва­нии БД.

Правила задаются следующими параметрами.

CASCADE/RESTRICT – разрешает/запрещает каскадные операции.

Ввод данных. Если добавляется новая запись в дочерний объект, для которого отсутствует запись из родительского объекта, то такой ввод мо­жет быть заблокирован (CASCADE).

Пример. Блокировка ввода записи дочернего объекта «СОТРУД­НИК», ес­ли указывается значение атрибута «Код подразде­ле­ния», отсут­ствую­ще­го в родительском объекте «ПОДРАЗДЕЛЕНИЕ».

Корректировка данных. Если корректируется поле связи ро­ди­тель­ского объекта, то автоматически меняются поля связей соответ­ст­вую­щих запи­сей дочернего объекта (CASCADE) или корректировку нужно забло­ки­ровать (RESTRICT).

Пример. После изменения в родительском объекте «ПОДРАЗДЕЛЕ­НИЕ» значения атрибута «Код подразделения» с 2 на 202 автоматически из­ме­нят­ся в дочернем объекте «СОТРУДНИК» все записи со значением атрибута «Код подразделения», равным 2, на новое значение 202 (все сотрудники из подразделения с кодом 2 переведутся в подразделение с новым кодом 202). Если такой перевод не может быть реальным, то можно установить правило блокировки корректировки, что не позволит изменить код под­раз­де­ления в объекте «ПОДРАЗДЕЛЕНИЕ» на новое значение, если есть сот­руд­ники в данном подразделении.

Удаление записей. Если удаляется запись ро­ди­тель­ского объекта, то автоматически удаляются все соответ­ст­вую­щие записи дочернего объекта (CASCADE) или удаление нужно заблокировать (RESTRICT).

Пример. После удаления в родительском объекте «ПОДРАЗДЕЛЕ­НИЕ» записи со значением атрибута «Код подразделения», равным 201, авто­матически удаляются в дочернем объекте «СОТРУДНИК» все записи со значением атрибута «Код подразделения», равным 201 (все сотрудники из подразделения с кодом 201 увольняются). Если такого расфор­миро­ва­ния подразделения не может быть, то устанавливают правило блокировки каскадного удаления записей. Это не позволит удалить запись с кодом под­раз­де­ления в объекте «ПОДРАЗДЕЛЕНИЕ», равным значению 201 (снача­ла нужно удалить все записи из объекта «СОТРУДНИК» со значением атри­бута «Код под­раз­де­ле­ния», равным 201, а затем удалить запись в ро­ди­тельском объекте «ПОД­РАЗДЕЛЕНИЕ» со значением атри­бута «Код подразделения», равным 201).

NONE – отмена контроля ссылочной целостности. Значение внешнего клю­ча не меняется при соответствующих операциях (для дочерних записей могут отсутствовать родительские записи).

SET NULL/DEFAULT – при удалении родительской записи зна­чения внеш­­них ключей в до­чер­них записях примут значения NULL/умал­чи­ва­е­мые (дочерние записи будут автоном­ными/переподчинены другой роди­тель­ской записи со значением ключа, равным умалчиваемому значению).

Эти правила можно отобразить в диаграмме командой Format/Rela­ti­on­­ship Display/Referential Integrity.

Связь «многие‑ко‑многим» допускается только на логическом уровне.


Рассмотрим пример такой связи (рисунок 3.2.3.9).

Рисунок 3.2.3.9. Связь «многие‑ко‑многим»

При переходе к физическому уровню командой Create Accosiation Table из контекстного меню этой связи она преоб­ра­зу­ет­ся в две связи «один‑ко‑мно­гим» к новой созданной таблице-связке (рисунок 3.2.3.10).


Рисунок 3.2.3.10. Связь «многие‑ко‑многим» на физическом уровне

 

Имя этой сущности можно изменить, например на Визит. Первич­ные ключи мигрируют в эту сущность. Первич­ный ключ этой сущ­нос­ти можно дополнить, например, датой визита пациента (рисунок 3.2.3.11).

Вне­сен­ные изменения на физическом уровне не изменяют представление на ло­ги­ческом уровне (рисунок 3.2.3.9).

Рисунок 3.2.3.11. Дополнение физической модели со связью «многие‑ко‑многим»

 


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

Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...

Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

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



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

0.007 с.