SQL Server 2005 Уникальное ограничение на два столбца - PullRequest
32 голосов
/ 02 февраля 2010

Как добавить уникальное ограничение в SQL Server 2005 к двум столбцам? Итак, скажем, что у меня есть:

PK, A, B ...
x1  1  1
x2  1  2
x3  2  1
x4  2  2

Я не смог бы добавить еще одну строку 'x5', чтобы значения A и B были равны 1,1, поскольку они уже есть в базе данных в x1?

Хорошо, нам удалось заставить его работать и благодаря OMG. Перейдите к представлению таблицы, выберите два столбца, щелкните правой кнопкой мыши и выберите «индексы / ключи» - вкладка «Общие», выберите столбцы, которые хотите, чтобы они были уникальными, а затем установите для «уникальность» значение «истина». Это с помощью дизайнера таблиц.

Спасибо.

Ответы [ 2 ]

37 голосов
/ 02 февраля 2010
ALTER TABLE YourTable
ADD CONSTRAINT UQ_YourTable_ConstraintName UNIQUE(A, B)
35 голосов
/ 02 февраля 2010

В SQL Server уникальное ограничение действительно реализовано как уникальный индекс. Использование:

CREATE UNIQUE INDEX <uix_name> ON <table_name>(<col_A>, <col_B>)

Для получения дополнительной информации см. эту страницу MSDN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...