Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
127
Добавлен:
02.05.2014
Размер:
1.03 Mб
Скачать

7.1.4 Создание ограничений ссылочной целостности

Для создания ограничений ссылочной целостности применяются SQL-операторы ALTER TABLE … ADD CONSTRAINT с фразой FOREIGN KEY. Фраза REFERENCES указывает при этом на родительскую таблицу, а фразы ON DELETE и ON UPDATE задают правила обработки в ситуациях удаления и изменения родителя.

ALTER TABLE [dbo].[ответственный за поступление сотрудник]

ADD CONSTRAINT FK_ответ_за_пост_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[реставратор]

ADD CONSTRAINT FK_реставратор_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[ответственный сотрудник за экспозицию]

ADD CONSTRAINT FK_ответ_за_эксп_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[персонал]

ADD CONSTRAINT FK_персонал_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[хар-ка объекта]

ADD CONSTRAINT FK_хар_ка_объекта_объект

FOREIGN KEY ([код объекта])

REFERENCES [объект поступления]([код объекта])

ON DELETE CASCADE

ON UPDATE CASCADE,

CONSTRAINT FK_хар_ка_объекта_хар_ка

FOREIGN KEY ([код хар-ки])

REFERENCES [хар-ка]([код хар-ки])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[реставратор реставрации]

ADD CONSTRAINT FK_реставратор_рест_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[персонал экспозиции]

ADD CONSTRAINT FK_персонал_эксп_экспозиция

FOREIGN KEY ([рег номер экспозиции])

REFERENCES [экспозиция]([рег номер экспозиции])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[экспонат экспозиции]

ADD CONSTRAINT FK_экспонат_экспозиция

FOREIGN KEY ([рег номер экспозиции])

REFERENCES [экспозиция]([рег номер экспозиции])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[объект реставрации]

ADD CONSTRAINT FK_объект_рест_реставрация

FOREIGN KEY ([рег номер рест])

REFERENCES [реставрация]([рег номер рест])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[вып работа на объекте]

ADD CONSTRAINT FK_работа_объект_рест

FOREIGN KEY ([нпп объекта],[рег номер рест])

REFERENCES [объект реставрации] ([нпп объекта],[рег номер рест])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[автор объекта]

ADD CONSTRAINT FK_автор_объекта_автор

FOREIGN KEY ([код автора])

REFERENCES [автор]([код автора])

ON DELETE CASCADE

ON UPDATE CASCADE,

CONSTRAINT FK_автор_объекта_объект_пост

FOREIGN KEY ([код объекта])

REFERENCES [объект поступления]([код объекта])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[ответственный за поступление сотрудник]

ADD CONSTRAINT FK_ответ_сотрудник_должность

FOREIGN KEY ([код должности])

REFERENCES [должность]([код должности])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[ответственный сотрудник за экспозицию]

ADD CONSTRAINT FK_ответ_сотрудник_эксп_должность

FOREIGN KEY ([код должности])

REFERENCES [должность]([код должности])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[поступление]

ADD CONSTRAINT FK_поступление_отв_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [ответственный за поступление сотрудник]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE,

CONSTRAINT FK_поступление_владелец

FOREIGN KEY ([код клиента])

REFERENCES [владелец пост объекта]([код клиента])

ON DELETE CASCADE

ON UPDATE CASCADE,

CONSTRAINT FK_поступление_объект_пост

FOREIGN KEY ([код объекта])

REFERENCES [объект поступления]([код объекта])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[хар-ка]

ADD CONSTRAINT FK_хар_ка_вид

FOREIGN KEY ([код вида],[селектор])

REFERENCES [вид]([код вида],[селектор])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[категория рест-ра]

ADD CONSTRAINT FK_категория_вид

FOREIGN KEY ([код вида],[селектор])

REFERENCES [вид]([код вида],[селектор])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[должность]

ADD CONSTRAINT FK_должность_вид

FOREIGN KEY ([код вида],[селектор])

REFERENCES [вид]([код вида],[селектор])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[объект поступления]

ADD CONSTRAINT FK_объект_вид

FOREIGN KEY ([код вида],[селектор])

REFERENCES [вид]([код вида],[селектор])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[реставратор реставрации]

ADD CONSTRAINT FK_реставратор_рест_реставрация

FOREIGN KEY ([рег номер рест])

REFERENCES [реставрация]([рег номер рест])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[реставратор реставрации]

ADD CONSTRAINT FK_реставратор_рест_категория

FOREIGN KEY ([код категории])

REFERENCES [категория рест-ра]([код категории])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[экспозиция]

ADD CONSTRAINT FK_экспозиция_сотр_эксп

FOREIGN KEY ([таб номер])

REFERENCES [ответственный сотрудник за экспозицию]([таб номер])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[персонал экспозиции]

ADD CONSTRAINT FK_персонал_эксп_экспозиция1

FOREIGN KEY ([рег номер экспозиции])

REFERENCES [экспозиция]([рег номер экспозиции])

ON DELETE CASCADE

ON UPDATE CASCADE

ALTER TABLE [dbo].[персонал экспозиции]

ADD CONSTRAINT FK_персонал_эксп_сотрудник

FOREIGN KEY ([таб номер])

REFERENCES [сотрудник]([таб номер])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[экспонат экспозиции]

ADD CONSTRAINT FK_экспонат_объект_пост

FOREIGN KEY ([код объекта])

REFERENCES [объект поступления]([код объекта])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[экспонат экспозиции]

ADD CONSTRAINT FK_экспонат_зал

FOREIGN KEY ([код зала])

REFERENCES [зал]([код зала])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[объект реставрации]

ADD CONSTRAINT FK_объект_рест_объект

FOREIGN KEY ([код объекта])

REFERENCES [объект поступления]([код объекта])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[объект реставрации]

ADD CONSTRAINT FK_объект_рест_реставратор2

FOREIGN KEY([таб номер], [нпп рест])

REFERENCES [dbo].[реставратор реставрации] ([таб номер], [нпп рест])

ON DELETE no action

ON UPDATE no action

ALTER TABLE [dbo].[вып работа на объекте]

ADD CONSTRAINT FK_работа_вид

FOREIGN KEY ([код вида],[селектор])

REFERENCES [вид]([код вида],[селектор])

ON DELETE no action

ON UPDATE no action

Соседние файлы в папке База данных - Музей