Предложение UNIQUE

Оценить
(0 голоса)

Иногда несколько столбцов или групп столбцов таблицы имеют уникальные значения и поэтому могут быть использованы в качестве первичного ключа. Все столбцы или группы столбцов, которые могут рассматриваться как первичные ключи, называются кандидатами в ключи. Каждый кандидат в ключи определяется с использованием предложения unique в операторе create table или alter table.

Предложение unique имеет следующую форму:

[constraint с_пате]

unique [clustered | nonclustered]   ([col_namel]  ,...)

Опция constraint в предложении unique назначает явное имя кандидату в ключи. Опция clustered или nonclustered соответствует тому факту, что Database Engine всегда генерирует индекс для каждого кандидата в ключи таблицы. Индекс может быть кластеризованным, т. е. физический порядок строк в индексе соответствует порядку значений столбцов индекса. Если порядок не задан, индекс является некластеризованным. Значение по умолчанию - nonclustered. Параметр coi_namei - имя столбца, который входит в состав кандидата в ключи. Максимальное количество столбцов для кандидата в ключи равно 16.

Пример 5.6 демонстрирует использование предложения unique.

Предложение UNIQUE

 

Каждое значение столбца projectno в таблице projects является уникальным, включая значение null. (Точно так же, как и любое другое значение в ограничении unique, если значения null допустимы для соответствующего столбца, то в таблице может присутствовать не более одной строки со значением null для данного столбца.) Если значение, которое уже присутствует в таблице, будет помещаться в столбец projectno, то система отвергнет эту операцию. Ограничение, которое определено в примере 5.6, имеет явное имя unique_no.


Предложение PRIMARY KEY
Предложение CHECK
Предложение FOREIGN KEY
Ссылочная целостность
Возможные проблемы, связанные со ссылочной целостностью

Добавить комментарий


Защитный код
Обновить

© 2018 www.serversql.ru. Все права защищены.