如何避免没有主键和唯一键的重复条目?

时间:2014-09-26 05:14:32

标签: mysql

我想知道是否可以避免重复条目或没有任何密钥或按语句分组的数据

2 个答案:

答案 0 :(得分:2)

创建唯一键码。

ALTER TABLE Comment ADD CONSTRAINT uc_Comment UNIQUE (CommentId, Comment)

在上述情况下,由于我们正在创建COmmentId和Comment的唯一组合,因此不会进行注释复制。

希望这有帮助。

更多信息:http://www.w3schools.com/sql/sql_unique.asp

SQL Server 2005 How Create a Unique Constraint?

答案 1 :(得分:1)

如果要在查询时禁止重复,请使用SELECT DISTINCT

如果您想避免将重复项放入表中,请不要插入已存在的记录。您是否拥有主要/唯一密钥并不重要:那些将使数据库不允许重复记录,但仍然由您来避免尝试< / em>插入重复项(假设您希望查询成功)。

您可以使用SELECT在尝试插入记录之前查找记录是否已存在。或者,如果您想要花哨,可以将新记录插入临时表中,使用DELETE删除实际表中已存在的任何记录,然后使用INSERT ... SELECT复制剩余记录从临时表到真正的表。