我有一个像这样的表:
|UserId | ContactID | ContactName
---------------------------------------
| 12456 | Ax759 | Joe Smith
| 12456 | Ax760 | Mary Smith
| 12458 | Ax739 | Carl Lewis
| 12460 | Ax759 | Chuck Norris
| 12460 | Bx759 | Bruce Lee
Run Code Online (Sandbox Code Playgroud)
我需要为此表添加一个约束,以便没有用户可以拥有重复的联系人ID.用户正在从各种外部系统导入数据,因此ContactId不是全面唯一的,但在每个用户的基础上是唯一的.
我知道如何基于单列创建唯一和非空的约束,但是如何在2列中创建唯一的约束?
sql-server sql-server-2005 constraints unique-constraint sql-server-2008
我有一个名为的表countries,我country_name通过在SQL Server 2008 R2上创建"唯一键"类型的"索引/键"来定义列是唯一的.
但我有以下问题:
IsUnique值保持为"是",那么会有任何差异吗?如何在SQL Server 2005中将唯一约束添加到两列?所以我要说:
PK, A, B ...
x1 1 1
x2 1 2
x3 2 1
x4 2 2
Run Code Online (Sandbox Code Playgroud)
我不应该添加另一行'x5'并且A和B的值是1,1,因为它们已经在x1的数据库中了?
好的,我们设法让它工作,感谢OMG.转到表格视图,选择两列,右键单击并选择"索引/键" - 常规选项卡,选择要唯一的列,然后将"is unique"设置为true.这是使用表设计器.
谢谢.