3

我有一个有 10 列的表,我必须从 CSV 文件中添加很多很多行。当然,我不能添加两个相同的行,所以如果整行确实存在,我需要一个忽略该命令的 SQL 语句。仅当所有字段都相同时,才必须忽略 INSERT。两行可能具有相同的field1field2,但并非所有字段都相同。

我试过INSERT IGNORE了,但它不起作用。没有将列设置为UNIQUE,因为INSERT只有当整行相同时才必须忽略 onyl。

您对此有什么解决方案?谢谢!

4

1 回答 1

2

然后或根据您的需要在所有列上创建组合索引。INSERT IGNOREREPLACE INTO

文档

如果使用 IGNORE 关键字,则执行 INSERT 语句时发生的错误将被视为警告。例如,如果没有 IGNORE,复制表中现有UNIQUE 索引或 PRIMARY KEY 值的行会导致重复键错误并且语句被中止。使用 IGNORE,行仍然没有插入,但不会发出错误。

于 2012-06-13T20:01:23.240 回答