mysql C API批量插入

时间:2011-08-30 09:32:49

标签: mysql c database

我想使用C API向MySQL发送批量更新。如果其中任何一个失败,我需要知道哪一个失败了。这有什么选择?我可以在my_query()中使用multiple语句命令,还是可以使用多个插入?在这两种情况下,我都没能找到如何检索失败的确切行(由于重复键)

1 个答案:

答案 0 :(得分:0)

如果使用批量插入,如果其中一个记录的插入失败,该命令将失败。在这种情况下,不会插入任何行,并且您将收到包含重复值的文本的错误。

例如:

INSERT INTO table10 VALUES (1), (2), (3);
ok
INSERT INTO table10 VALUES (4), (1), (2);
Duplicate entry '1' for key 'PRIMARY'

此外,您可以使用INSERT语句中的IGNORE选项忽略所有错误。