如何防止SQL Server中的数据重复?
假设我在SQL SERVER 2005数据库中有一个如下所示的表:如何防止SQL Server中的数据重复?,sql,sql-server,Sql,Sql Server,假设我在SQL SERVER 2005数据库中有一个如下所示的表: UserId ProductId ProductName 1 2 ABC 1 2 ABC 现在我想应用check,以便不能为同一用户再次输入相同的productId。我还希望sql server强制执行此检查。是否要使用唯一约束 我认为声明主键UserId、ProductId而不是使用check语句可能更自然
UserId ProductId ProductName
1 2 ABC
1 2 ABC
现在我想应用check,以便不能为同一用户再次输入相同的productId。我还希望sql server强制执行此检查。是否要使用唯一约束
我认为声明主键UserId、ProductId而不是使用check语句可能更自然 你能试试这个吗 在创建新密钥之前,请清除重复项: 请看这里: 完成后,您可以执行以下操作:
ALTER TABLE <tablename> ADD CONSTRAINT pk_UserIdProductId PRIMARY KEY (UserId, ProductId)
当然,如果您刚刚演示了一个示例,并且还没有任何副本,请尝试上面的命令