- •Введение
- •1.2 Описание автоматизируемых функций (бизнес-процессов)
- •1.2.1 Перечень автоматизируемых функций
- •1.2.2 Функция 1 «Поступление»
- •1.2.3 Функция 2 «Реставрация»
- •1.2.4 Функция 3 «Экспозиция»
- •1.3 Первичное описание информационного обеспечения
- •1.4 Вывод
- •2.1.3 Функция 3 «Экспозиция»
- •2.2 Спецификации локальных ограничений и правил
- •2.3 Вывод
- •3.1.1 Функция 1 «Поступление»
- •3.1.2 Функция 2 «Реставрация»
- •3.1.3 Функция 3 «Экспозиция»
- •3.2 Спецификации локальных ограничений и правил
- •3.3 Вывод
- •4.1.3 Выявление дублирования атрибутов и связей
- •4.2 Синтез глобальной er-модели
- •4.2.1 Слияние эквивалентных сущностей
- •4.2.2 Синтез обобщающих сущностей и категорий
- •4.2.3 Устранение дублирования атрибутов и связей
- •4.2.4 Введение связей «многие ко многим»
- •4.3 Спецификации ограничений и правил
- •4.3 Вывод
- •5 Проектирование внутренней реляционной модели
- •5.1 Устранение подсущностей, категорий и явных связей
- •5.1.1 Устранение подсущностей и категорий
- •5.1.2 Устранение явных связей типа «один ко многим»
- •5.2 Спецификации ограничений и правил
- •5.4 Вывод
- •6 Проектирование моделей отображения
- •6.1 Разработка иерархий представлений
- •6.1.1 Функция 1 «Поступление»
- •6.1.2 Функция 2 «Реставрация»
- •6.1.3 Функция 3 «Экспозиция»
- •6.2 Разработка внутренних моделей представлений
- •6.2.1 Функция 1 «Поступление»
- •6.2.2 Функция 2 «Реставрация»
- •6.2.3 Функция 3 «Экспозиция»
- •6.3 Вывод
- •7 Разработка sql-кода базы данных
- •7.1 Sql-код создания таблиц
- •7.1.1 Создание столбцов таблиц
- •7.1.2 Создание ограничений уникальности
- •7.1.3 Создание ограничений атрибутов и кортежей
- •7.1.4 Создание ограничений ссылочной целостности
- •7.1.5 Создание триггеров базы данных
- •7.2 Sql-код создания представлений отображения
- •7.2.1 Представления отображения для функции 1
- •7.2.2 Представления отображения для функции 2
- •7.2.3 Представления отображения для функции 3
- •7.4 Вывод
- •8.1 Выбор ориентации внешних xml-представлений
- •8.2 Разработка xsd-схем внешних xml-документов
- •8.2.1 Xsd-схема для функции 1
- •8.2.2 Xsd-схема для функции 2
- •8.2.3 Xsd-схема для функции 3
- •8.3 Разработка аннотированных схем отображения
- •8.3.1 Схема отображения для функции 1
- •8.3.2 Схема отображения для функции 2
- •8.3.3 Схема отображения для функции 3
- •8.4 Вывод
- •Заключение
- •Список литературы
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