执行sql文件时忽略mysql错误消息

执行sql文件时忽略mysql错误消息,mysql,Mysql,我正在将记录从一个表复制到另一个表,可能有些记录已经存在于我将记录复制到的第二个表中 由于我正在复制很多行,所以我正在寻找一种方法来忽略来自mysql的所有已经存在的记录消息,并继续执行mysql文件 有什么方法可以抑制错误消息吗?如下所述: 该语句支持以下修饰符: [ deletia ] [deletia] 如果使用IGNORE关键字,则执行语句时发生的错误将被视为警告。例如,如果不使用IGNORE,则复制表中现有的唯一索引或主键值的行将导致重复键错误,并中止该语句。使用“忽略”“忽略”,仍

我正在将记录从一个表复制到另一个表,可能有些记录已经存在于我将记录复制到的第二个表中

由于我正在复制很多行,所以我正在寻找一种方法来忽略来自mysql的所有已经存在的记录消息,并继续执行mysql文件

有什么方法可以抑制错误消息吗?

如下所述:

该语句支持以下修饰符:

[ deletia ] [deletia]
  • 如果使用
    IGNORE
    关键字,则执行语句时发生的错误将被视为警告。例如,如果不使用
    IGNORE
    ,则复制表中现有的
    唯一
    索引或
    主键
    值的行将导致重复键错误,并中止该语句。使用“忽略”
    “忽略”
    ,仍不会插入行,但不会发出错误
如以下文件所述:

该语句支持以下修饰符:

[ deletia ] [deletia]
  • 如果使用
    IGNORE
    关键字,则执行语句时发生的错误将被视为警告。例如,如果不使用
    IGNORE
    ,则复制表中现有的
    唯一
    索引或
    主键
    值的行将导致重复键错误,并中止该语句。使用“忽略”
    “忽略”
    ,仍不会插入行,但不会发出错误
试试这个:

zcat db.sql.gz | sed -e 's/INSERT/INSERT IGNORE/' | mysql -u user -p dbname
试试这个:

zcat db.sql.gz | sed -e 's/INSERT/INSERT IGNORE/' | mysql -u user -p dbname

我不想插入重复记录。我不想插入重复记录。请参见另请参见