sql – 如何在多列上放置唯一的约束

前端之家收集整理的这篇文章主要介绍了sql – 如何在多列上放置唯一的约束前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
EmpID DeptID

1     1
1     2
2     1
3     2
4     5
5     2
1     1   
2     1

我想要一个约束,确保一对字段始终是唯一的,例子中显示的最后两个数据的数据不应该插入表中.在上表中
请注意,最后两行是重复的,我想防止发生这种数据.
如何在sqlserver 2005中实现这一点.谢谢

解决方法

ALTER TABLE <YourTable,sysname,Emp> 
ADD CONSTRAINT <YourConstraintName,uix> 
UNIQUE NONCLUSTERED (EmpID,DeptID)

(粘贴到SSMS并使用(CTRL Shift M))

或者在表创建时这样做,因为它听起来好像没有其他的关键用途.

CREATE TABLE EMPLOYEE_DEPARTMENT(
    EmpID int NOT NULL REFERENCES EMPLOYEE(EmpID),DeptID int NOT NULL REFERENCES DEPARTMENT(DeptID),CONSTRAINT PK_EMPLOYEE_DEPARTMENT PRIMARY KEY CLUSTERED (EmpID ASC,DeptID ASC)
)

猜你在找的MsSQL相关文章