【问题标题】:Insert with execute many, skipping rows that fail foreign key constraints插入并执行许多跳过外键约束失败的行
【发布时间】:2021-05-22 12:29:54
【问题描述】:

我正在使用 Python mysql.connector 。我必须做很多插入。我插入的数据可能有一些行会导致外键约束失败,从而返回 1452 mysql 错误。

 add_specific="""
INSERT INTO `specific info type`
(`name`, `Classification Type_idClassificationType`)
VALUES
(%s, %s);
"""
cursor.executemany(add_specific, specific_info)

有没有一种方法可以让我执行所有的插入操作,如果出现 1452,该示例将被跳过。我读到 executemany 效率更高,所以我更喜欢使用它。我想我可以遍历所有示例并进行单独的插入并捕获异常。

【问题讨论】:

    标签: python mysql foreign-keys mysql-connector-python mysql-error-1452


    【解决方案1】:

    使用INSERT IGNORE INTO whatever,MySQL 将忽略插入失败的行。

    【讨论】:

      猜你喜欢
      • 2013-10-20
      • 2016-06-04
      • 2013-02-07
      • 1970-01-01
      • 1970-01-01
      • 2011-10-04
      • 2013-05-29
      • 1970-01-01
      • 2015-04-24
      相关资源
      最近更新 更多