如何确保两行不具有相同的值[重复]
Posted
技术标签:
【中文标题】如何确保两行不具有相同的值[重复]【英文标题】:How to make sure two rows don't have the same value [duplicate] 【发布时间】:2014-01-23 06:49:40 【问题描述】:我有一个包含几列的表,我想确保两个特定列的值不同。其实我不想让用户多次报错。在插入报告之前,我想确保同一用户没有报告相同的内容,因此不应该存在具有相似用户 ID 和内容 ID 的行。 我想到的是发送查询以检查它是否返回结果,如果没有则插入报告。但一定有更好的办法。
感谢您的帮助。
【问题讨论】:
UNIQUE (userID, conentID)
【参考方案1】:
您可以在用户 ID 和内容 ID 上创建复合索引,并对该索引设置 UNIQUE 约束。
假设您有一个report
表:
alter table report add unique index(user_id, content_id);
现在,当您尝试插入与用户和内容 ID 对重复的记录时,您将收到一个错误,您可以在应用程序代码中适当地处理该错误。
【讨论】:
以上是关于如何确保两行不具有相同的值[重复]的主要内容,如果未能解决你的问题,请参考以下文章