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

7.1.2 Создание ограничений уникальности

Для создания ограничений уникальности применяются SQL-операторы ALTER TABLE … ADD CONSTRAINT. Первичные ключи задаются с помощь фразы PRIMARY KEY, а ключи-кандидаты — с помощью фразы UNIQUE.

ALTER TABLE [dbo].[сотрудник]

ADD CONSTRAINT PK_сотрудник

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

CONSTRAINT UN_ФИО

UNIQUE ([фио])

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

ADD CONSTRAINT PK_отв_за_пост_сотр

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

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

ADD CONSTRAINT PK_реставратор

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

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

ADD CONSTRAINT PK_отв_сотр_за_эксп

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

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

ADD CONSTRAINT PK_персонал

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

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

ADD CONSTRAINT PK_поступление

PRIMARY KEY ([рег номер поступления])

ALTER TABLE [dbo].[владелец пост объекта]

ADD CONSTRAINT PK_владелец

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

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

ADD CONSTRAINT PK_автор

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

ALTER TABLE [dbo].[зал]

ADD CONSTRAINT PK_зал

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

ALTER TABLE [dbo].[вид]

ADD CONSTRAINT PK_вид

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

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

ADD CONSTRAINT PK_хар_ка

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

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

ADD CONSTRAINT PK_должность

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

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

ADD CONSTRAINT PK_категория

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

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

ADD CONSTRAINT PK_объект_пост

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

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

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

PRIMARY KEY ([код объекта],[код хар-ки])

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

ADD CONSTRAINT PK_реставрация

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

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

ADD CONSTRAINT PK_реставратор_рест

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

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

ADD CONSTRAINT PK_экспозиция

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

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

ADD CONSTRAINT PK_персонал_эксп

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

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

ADD CONSTRAINT PK_экспонат

PRIMARY KEY ([нпп объекта],[рег номер экспозиции])

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

ADD CONSTRAINT PK_кафедра

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

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

ADD CONSTRAINT PK_работа

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

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

ADD CONSTRAINT PK_автор_об

PRIMARY KEY ([код автора],[код объекта])

7.1.3 Создание ограничений атрибутов и кортежей

Для создания ограничений атрибутов и кортежей применяются SQL-операторы ALTER TABLE … ADD CONSTRAINT с фразой CHECK.

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

ADD CONSTRAINT CH_дата

CHECK ([дата]<= GetDate())

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

ADD CONSTRAINT CH_код_автора

CHECK ([код автора] BETWEEN 000001 AND 100000)

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

ADD CONSTRAINT CH_нпп_рест

CHECK ([нпп рест] BETWEEN 000001 AND 100000)

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

ADD CONSTRAINT CH_продолжительность

CHECK ([продолжительность]=[дата окончания]-[дата начала])

ALTER TABLE [dbo].[сотрудник]

ADD CONSTRAINT CH_фио

CHECK ([фио] BETWEEN 'А' AND 'яя')

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