1

在我的服务器中,我使用类似的命令向数据库添加值

INSERT INTO votes VALUES ('1',0),('2',0),('3',0)

主键是每个值键的第一个参数。有时,在添加时,主键可能已经存在于表中。

问题是,如果发生这种情况,我会收到一个错误,它会停止将它们全部添加的整个过程。

有没有一种方法,如果当前键已经存在,那么它只是跳过当前值集,然后移动到下一个?

谢谢

4

3 回答 3

2

INSERT IGNORE INTO votes VALUES ('1',0),('2',0),('3',0);

于 2013-11-07T06:08:12.727 回答
1

如果主键是 ,则无需显式分配主键AUTO_INCREMENT

假设您的表votes有 2 列:iddata

查询是:

INSERT INTO votes (`data`) VALUES (0),(0),(0)
于 2013-11-07T06:07:53.110 回答
1

是的,使用INSERT IGNORE语法,它会工作

于 2013-11-07T06:10:00.977 回答