MySQL - 如果所有记录都相同,则更新EXCEPT ID

时间:2014-03-26 18:36:37

标签: mysql sql

我有一个数据库,每行分配一个AUTO_INCREMENT ID。我尝试只有INSERT一行,当它不存在时,但是目前我发现使用INSERT IGNORE数据库添加一个新行,我相信因为ID是相等的?除了ID

之外,如果所有列都相等,我将如何才能插入新行?

1 个答案:

答案 0 :(得分:1)

您可以在其余列上创建唯一索引:

create unique index idx_table_allcols on table(col1, col2, . . . );

然后您的insert语句将检查是否正在插入新值。 INSERT IGNORE不会插入记录,也不会生成错误。