我有一个有 10 列的表,我必须从 CSV 文件中添加很多很多行。当然,我不能添加两个相同的行,所以如果整行确实存在,我需要一个忽略该命令的 SQL 语句。仅当所有字段都相同时,才必须忽略 INSERT。两行可能具有相同的field1或field2,但并非所有字段都相同。
我试过INSERT IGNORE
了,但它不起作用。没有将列设置为UNIQUE
,因为INSERT
只有当整行相同时才必须忽略 onyl。
您对此有什么解决方案?谢谢!
然后或根据您的需要在所有列上创建组合索引。INSERT IGNORE
REPLACE INTO
从文档:
如果使用 IGNORE 关键字,则执行 INSERT 语句时发生的错误将被视为警告。例如,如果没有 IGNORE,复制表中现有UNIQUE 索引或 PRIMARY KEY 值的行会导致重复键错误并且语句被中止。使用 IGNORE,行仍然没有插入,但不会发出错误。