如果我的术语错误,请道歉。如何在MSSQL Server 2005中定义约束以在一列中强制实现唯一性,具体取决于另一列?
E.g。考虑最后两列:
1 A 1
2 A 2
3 A 2 <- Disallow because '2' has already appeared alongside 'A'
4 B 1
5 B 2
答案 0 :(得分:7)
试试这个:
CREATE TABLE tTable (field1 CHAR(1) NOT NULL, field2 INT NOT NULL, UNIQUE (field1, field2) )
答案 1 :(得分:1)
在2列上创建唯一约束?
这是最合乎逻辑的事情,因为看起来这一列不是唯一的,但两列的组合必须是唯一的。
答案 2 :(得分:0)
不需要是主键,只需要一个唯一的复合索引。