如何忽略已存在的唯一值的插入?

时间:2013-05-12 16:03:30

标签: mysql

假设我有一个表keywords(keyid, keyword),其中keyidprimary keykeywordvarcharunique

如何插入不存在的值并忽略表中已存在的值而不会出现错误?

例如,我插入a, b, c, d。然后我插入c, d, e, f。它应该忽略c和d,并插入e和f。

2 个答案:

答案 0 :(得分:0)

只需使用ON DUPLICATE KEY,例如

INSERT INTO keywords (keyid, keyword) 
     VALUES (100, 'a keyword') 
         ON DUPLICATE KEY UPDATE keyid = keyid;

这样,如果UPDATE已经存在,则会执行替代keyid

干杯!

答案 1 :(得分:0)

您可以使用ON DUPLICATE KEY UPDATE功能。文档here

示例

INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;