Составной первичный ключ в переменной типа Table - PullRequest
42 голосов
/ 14 сентября 2009

SQL Server 2008:

DECLARE @MyTable TABLE(
    PersonID INT NOT NULL,
    Person2ID INT NOT NULL,
    Description NVARCHAR(100),
CONSTRAINT PK PRIMARY KEY CLUSTERED (PersonID, Person2ID)
);

Дает:

Msg 156, Level 15, State 1, Line 5
Incorrect syntax near the keyword 'CONSTRAINT'.

Есть ли способ иметь составной первичный ключ в табличных переменных?

1 Ответ

91 голосов
/ 14 сентября 2009

Вы можете определить составной первичный ключ следующим образом:

DECLARE @MyTable TABLE
(   
    PersonID INT NOT NULL,    
    Person2ID INT NOT NULL,    
    Description NVARCHAR(100),
    PRIMARY KEY (PersonID, Person2ID)
);
...