Читаем BPwin и Erwin. CASE-средства для разработки информационных систем полностью

NONE - при удалении значение атрибута внешнего ключа не меняется. Запись об игроке "повисает в воздухе", т. е. ссылается на несуществующую уже команду. Такая ситуация характерна для "плоских" таблиц. Например, если информация об игроках и командах хранится в dbf-файлах, можно удалить запись о команде, при этом файл игроков "ничего не будет знать" о том, что соответствующей команды не существует. Поэтому в настольных или файл-серверных системах функциональность, обеспечивающая правила ссылочной целостности, реализуется в клиентском приложении.

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

Задать мощность связи между сущностями Команда и Игрок, равную "One or more" - 1 или более (тип Р). Предполагается, что установлена идентифицирующая связь.

Присвоить действие RI-триггера "Parent Insert-CASCADE" для того, чтобы при создании новой строки в таблице Команда автоматически создавалась хотя бы одна строка в дочерней таблице Игрок.

Присвоить связи действие RI-триггера "Parent Delete-CASCADE" для того, чтобы при удалении строки из таблицы Команда соответствующая строка или строки из таблицы Игрок тоже удалялись.

ERwin автоматически присваивает каждой связи значение ссылочной целостности, устанавливаемой по умолчанию, прежде чем добавить ее в диаграмму. Режимы RI, присваиваемые ERwin по умолчанию (приведены в табл. 2.4), могут быть изменены в редакторе Referential Integrity Default, который вызывается, если щелкнуть по кнопке RI Defaults диалога Target Server (меню Server/Target Server).

Таблица 2.4. Значения RI, присваиваемые в ERwin no умолчанию, а также возможные оежимы для каждого типа связи

Идентифицирующая связьНеидентифицирующая связь (Nulls Allowed)Неидентифицирующая связь (No Nulls)Категориальная связь
Child Delete Возможные режимыRESTRICT, CASCADE, NONERESTRICT, CASCADE, NONE, SET NULL, SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE,
NONE
Child Delete Режимы по умолчаниюNONENONENONENONE
Child Insert Возможные режимыRESTRICT, CASCADE,RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE,
NONENONE
Child Insert Режимы по умолчаниюRESTRICTSET NULLRESTRICTRESTRICT
Child Update Возможные режимыRESTRICT, CASCADE, NONERESTRICT, CASCADE, NONE, SET NULL,SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE, NONE
Child Update Режимы по умолчаниюRESTRICTSET NULLRESTRICTRESTRICT
Parent Delete Возможные режимыRESTRICT, CASCADE, NONERESTRICT, CASCADE, NONE, SET NULL,SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE,
NONE
Parent Delete Режимы по умолчаниюRESTRICTSET NULLRESTRICTCASCADE
Parent Insert Возможные режимыRESTRICT, CASCADE, NONERESTRICT, CASCADE, NONE, SET NULL,SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE, NONE
Parent Insert Режимы по умолчаниюNONENONENONENONE
Parent Update Возможные режимыRESTRICT, CASCADE, NONERESTRICT, CASCADE, NONE, SET NULL,SET DEFAULTRESTRICT, CASCADE, NONE, SET DEFAULTRESTRICT, CASCADE, NONE
Parent Update Режимы по умолчаниюRESTRICTSET NULLRESTRICTCASCADE
Перейти на страницу:

Похожие книги

97 этюдов для архитекторов программных систем
97 этюдов для архитекторов программных систем

Успешная карьера архитектора программного обеспечения требует хорошего владения как технической, так и деловой сторонами вопросов, связанных с проектированием архитектуры. В этой необычной книге ведущие архитекторы ПО со всего света обсуждают важные принципы разработки, выходящие далеко за пределы чисто технических вопросов.?Архитектор ПО выполняет роль посредника между командой разработчиков и бизнес-руководством компании, поэтому чтобы добиться успеха в этой профессии, необходимо не только овладеть различными технологиями, но и обеспечить работу над проектом в соответствии с бизнес-целями. В книге более 50 архитекторов рассказывают о том, что считают самым важным в своей работе, дают советы, как организовать общение с другими участниками проекта, как снизить сложность архитектуры, как оказывать поддержку разработчикам. Они щедро делятся множеством полезных идей и приемов, которые вынесли из своего многолетнего опыта. Авторы надеются, что книга станет источником вдохновения и руководством к действию для многих профессиональных программистов.

Билл де Ора , Майкл Хайгард , Нил Форд

Программирование, программы, базы данных / Базы данных / Программирование / Книги по IT