日期:2014-05-18  浏览次数:20524 次

如何令表内没有相同的记录(ID列出外)
如何设置约束,令一个每列都有可能出现多个null值的表中没有相同的记录(当然要把ID列剔除出去)

id(自增)   V             W         X        
1                 null       2         3        
2                 1             null   3        
3                 null       2         null

当现在我要insert第4条record的时候,V,   W,   X的值刚好与第1条记录相同,请问如何约束这个表,另这条记录插入失败,即我不想出现下面这种现象

id(自增)   V             W         X        
1                 null       2         3        
2                 1             null   3        
3                 null       2         null
4                 null       2         3

------解决方案--------------------
--把V,W,X列定义成唯一约束
create table T(id int identity(1, 1), V int, W int, X int, constraint uk unique(V, W, X))
go

------解决方案--------------------
在建索引的地方设置。建唯一索引再设为约束。