SQL Server - 根据另一列强制在一列中使用唯一性

xyz*_*xyz 3 t-sql sql-server sql-server-2005 constraints

如果我的术语错了,请道歉.如何在MSSQL Server 2005中定义约束以在一列中强制实现唯一性,具体取决于另一列?

例如,考虑最后两列:

1    A    1
2    A    2
3    A    2 <- Disallow because '2' has already appeared alongside 'A'
4    B    1
5    B    2
Run Code Online (Sandbox Code Playgroud)

gkr*_*ers 7

试试这个:

CREATE TABLE tTable
    (field1 CHAR(1) NOT NULL,
     field2 INT NOT NULL,
     UNIQUE (field1, field2)
)