Создание ограничений уникальности
Можно создать ограничение уникальности в SQL Server 2012 при помощи Среда SQL Server Management Studio или Transact-SQL, чтобы гарантировать, что в определенных столбцах, не участвующих в первичном ключе, не будут встречаться повторяющиеся значения. Создание ограничения уникальности автоматически приводит к созданию соответствующего уникального индекса.
В этом разделе
Перед началом работы выполните следующие действия.
Безопасность
Создание ограничения уникальности с использованием:
Среда SQL Server Management Studio
Transact-SQL
Перед началом
Безопасность
Разрешения
Требуется разрешение ALTER на таблицу.
[Top]
Использование среды SQL Server Management Studio
Создание ограничения уникальности
В Обозревателе объектов щелкните правой кнопкой мыши таблицу, в которую необходимо добавить ограничение уникальности, и выберите Конструктор.
В меню Конструктор таблиц выберите пункт Индексы и ключи.
В диалоговом окне Индексы и ключи нажмите Добавить.
В сетке в разделе Общее щелкните Тип и выберите Уникальный ключ в раскрывающемся списке справа от свойства.
В меню Файл выберите пункт Сохранить table name.
[Top]
Использование Transact-SQL
Создание ограничения уникальности
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели «Стандартная» выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере создаются таблица TransactionHistoryArchive4 и ограничение уникальности в столбце TransactionID.
USE AdventureWorks2012; GO CREATE TABLE Production.TransactionHistoryArchive4 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
Создание ограничения уникальности в существующей таблице
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели «Стандартная» выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере создается ограничение уникальности в столбцах PasswordHash и PasswordSalt в таблице Person.Password.
USE AdventureWorks2012; GO ALTER TABLE Person.Password ADD CONSTRAINT AK_Password UNIQUE (PasswordHash, PasswordSalt); GO
Создание ограничения уникальности в новой таблице
В обозревателе объектов установите соединение с экземпляром компонента Компонент Database Engine.
На панели «Стандартная» выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере создается таблица и определяется ограничение уникальности в столбце TransactionID.
USE AdventureWorks2012; GO CREATE TABLE Production.TransactionHistoryArchive2 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
Дополнительные сведения см. в разделах ALTER TABLE (Transact-SQL), Инструкция CREATE TABLE (Transact-SQL) и table_constraint (Transact-SQL).
[Top]