Unique Constraints SQL Server

В этом учебном пособии вы узнаете, как создавать, удалять, отключать, и включать unique constraints (уникальные ограничения) в SQL Server с синтаксисом и примерами.

Описание

В SQL Server (Transact-SQL) Unique Constraints как создавать, удалять, отключать, и включать unique constraints (уникальные ограничения)
Уникальное ограничение - это одно поле или комбинация полей, которые однозначно определяют запись. Некоторые из полей могут содержать нулевые значения, если комбинация значений уникальна.

В чем разница между уникальным ограничением и первичным ключом?

Первичный ключ - поля, которые являются частью первичного ключа, не могут содержать значение NULL.
Уникальное ограничение - некоторые поля, которые являются частью уникального ограничения, могут содержать значения NULL, если комбинация значений уникальна.

Создание уникального ограничения - использование оператора CREATE TABLE

Синтаксис создания уникального ограничения с использованием оператора CREATE TABLE в SQL

CREATE TABLE table_name
(
column1 datatype [ NULL | NOT NULL ],
column2 datatype [ NULL | NOT NULL ],
...

CONSTRAINT constraint_name UNIQUE (uc_col1, uc_col2, ... uc_col_n)
);

table_name - имя таблицы, которую вы хотите создать.
column1, column2 - столбцы, которые вы хотите создать в таблице.
constraint_name - имя уникального ограничения.
uc_col1, uc_col2, ... uc_col_n - столбцы, которые составляют уникальное ограничение.

Пример

Рассмотрим пример создания уникального ограничения в SQL Server с помощью опертора CREATE TABLE.

В этом примере мы создали уникальное ограничение для таблицы employees, с именем employee_unique, которое состоит только из одного поля employee_number.

Мы могли бы также создать уникальное ограничение с несколькими полями, как в приведенном ниже примере:

Создание уникального ограничения - использование оператора ALTER TABLE

Синтаксис создания уникального ограничения с использованием оператора ALTER TABLE в SQL Server:

ALTER TABLE table_name
ADD CONSTRAINT constraint_name UNIQUE (column1, column2, ... column_n);

table_name - имя таблицы для изменения. Это таблица, к которой вы хотите добавить уникальное ограничение.
constraint_name - имя уникального ограничения.
column1, column2, ... column_n - столбцы, которые составляют уникальное ограничение.

Пример

Рассмотрим пример того, как добавить уникальное ограничение в существующую таблицу в SQL Server с помощью оператора ALTER TABLE.

В этом примере мы создали уникальное ограничение для существующей таблицы employees, с именем employee_unique, состоящего из поля с именем employee_number.

Мы могли бы также создать уникальное ограничение с несколькими полями, как в приведенном ниже примере:

Удаление уникального ограничения

Синтаксис удаление уникального ограничения в SQL Server:

ALTER TABLE table_name
DROP CONSTRAINT constraint_name;

table_name - имя таблицы для изменения. Это таблица, ограничение, которой вы хотите удалить.
constraint_name - имя уникального ограничения для удаления.

Пример

Рассмотрим пример удаления уникального ограничения из таблицы в SQL Server.

В этом примере мы удалили уникальное ограничение employee_unique для таблицы employees.