У меня есть таблица с именем countries
, и я определяю столбец country_name
, чтобы быть уникальным, создав «Index/Key» типа «Unique Key» на SQL Server 2008 R2.Уникальный ключ против уникального индекса на SQL Server 2008
Но у меня есть следующие вопросы:
- будет создание «Индекс/Key» типа «Уникальный ключ» автоматически создать некластеризованный индекс по этой колонке?
- если я изменяю тип от «Уникального ключа» до «Индекса», и я сохраняю значение
IsUnique
«Да», тогда будут ли какие-либо различия? - так почему есть два варианта: «Уникальный ключ» и «Индекс». Я думаю, что два одинаковы?
Не уверен, что это просто информационное дифференцирование, но 'sys.indexes' имеет столбец' is_unique_constraint', чтобы определить, определяется ли индекс как ограничение, а не уникальный индекс. –
@ Andre Yep, это столбец в метаданных, так что * user * может определить, был ли он первоначально объявлен как ограничение. Это ничего не говорит о намерениях, и физическая реализация самого индекса - и соблюдение уникальности - одинакова. –