Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД_экз.docx
Скачиваний:
11
Добавлен:
24.09.2019
Размер:
837.07 Кб
Скачать

26.Ограничения по первичному ключу. Возможные и внешние ключи.

Ограничения по первичному ключу: 1.При объявлении в таблице первичного ключа создается кластеризованный индекс2.Индекс гарантирует уникальность первичного ключа3.В качестве первичного ключа часто берут поле, имеющее: целый тип (identity, Identity Seed, Identity Increment); uniqueidentifier(RowGuid)

Возможные ключи: 1.Поле (набор полей), которое однозначно определяет любую строку таблицы называется ключом (составной ключ).2.Первичный ключ 3.Нарушение уникальности первичного ключа приводит к тому, что некоторые данные окажутся недоступными.4.В таблице может быть несколько ключей, которые могут быть выбраны в качестве первичных. Их называют возможными ключами.5.Не используются для установления связи с другими таблицами.6.Служат дополнительным фактором сохранения целостности таблицы (индексирование, уникальный ключ)

Внешние ключи:

1. ограничения по внешним ключам при выполнении каких-либо действий во время репликации (процесс, под которым понимается копирование данных из одного источника на множество других и наоборот).

2.ограничения при выполнении операции удаления (delete) в главной таблице.

  • удаление строки из главной таблицы запрещается, если строка связана со строками другой таблицы посредством данного внешнего ключа;

  • удаление строки из главной таблицы каскадируется, т. е. удаляются связанные с ней строки;

  • удаление строки из главной таблицы разрешается, при этом значения внешнего ключа для связанных строк устанавливается в null при условии, что null разрешен в качестве значения по умолчанию для внешнего ключа (столбца);

  • удаление строки из главной таблицы разрешается, при этом значение внешнего ключа для связанных строк устанавливается по умолчанию при условии, что такое значение определено;

3.ограничения при выполнении операции обновления (update) в главной таблице, при условии, что обновление касается внешнего ключа, т. е. меняется значение первичного ключа в главной таблице:

  • обновление строки из главной таблицы запрещается, если строка связана со строками другой таблицы посредством данного внешнего ключа;

  • обновление строки из главной таблицы каскадируется, т. е. обновляются связанные с ней строки;

  • обновление строки из главной таблицы разрешается, при этом значение внешнего ключа у связанных строк устанавливается в null при условии, что null разрешен в качестве значения по умолчанию для внешнего ключа (столбца);

  • обновление строки из главной таблицы разрешается, при этом внешнему ключу связанных строк присваивается значение по умолчанию при условии, что такое значение определено.

27.Ограничения по условию. Вычисляемые поля. Триггеры.

Ограничения по условию-условие, которому должна удовлетворять величина, помещаемая в поле.

  1. Тип данных;

  2. Множество возможных значений – домен.

Поле password имеет тип char(15). В нем предполагается хранить пароли.

Ограничение

len(rtrim(password) )=>8

определяет, что длина пароля не может быть меньше восьми символов.

Вычисляемые поля

Параметры формул:

  • другие поля таблицы

  • стандартные выражения языка Transact-SQL

  • встроенные функции

  • пользовательские скалярные функции

При чтении значений вычисляемого поля будет подставляться вычисленное значение (свойство Is Persisted):

  1. Значение столбца вычисляется каждый раз при чтении таблицы;

  2. Значение столбца вычисляется при изменении параметров формулы и хранится в вычисляемом поле.

Триггеры-Особый тип хранимой процедуры, который автоматически вызывается при наступлении некоторого события с данными.

  • триггеры DDL

  • триггеры DML

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]