我尝试使用命令行从sql文件导入表数据。 此数据内容重复在url
。如何执行SQL查询跳过错误?
但表中的字段url
是唯一的。所以当我试图插入数据时,我得到错误“Dublicate entry”
如何导入所有数据跳过此错误?
我尝试使用命令行从sql文件导入表数据。 此数据内容重复在url
。如何执行SQL查询跳过错误?
但表中的字段url
是唯一的。所以当我试图插入数据时,我得到错误“Dublicate entry”
如何导入所有数据跳过此错误?
您可以使用--force(-f)标志。
mysql -u userName -p -f -D dbName < script.sql
从man mysql
:
·--force,-f
继续即使出现SQL错误。
如果使用insert
时,您可以使用ignore error
或on duplicate key update
(可取的,因为它只是忽略重复键错误)忽略错误。
如果您使用的是load data infile
,那么您可以使用ignore
关键字。正如documentation描述:
如果指定
IGNORE
,即重复上 唯一键值的现有行行都将被丢弃。有关更多信息,请参阅IGNORE关键字和严格SQL模式的比较 。
或者说,我通常会做:
您应该可能导入到新表中,并且只插入唯一记录。 – HoneyBadger
显示您正在使用的代码。 –
如何执行此操作?创建一个表以及如何插入唯一的行? – MisterPi