【问题标题】:Both “INSERT IGNORE” and “… ON DUPLICATE KEY UPDATE” what happens?“INSERT IGNORE”和“... ON DUPLICATE KEY UPDATE”都会发生什么?
【发布时间】:2012-06-05 01:57:41
【问题描述】:

mysql 将如何处理 INSERT IGNORE… ON DUPLICATE KEY UPDATE

这不是关于他们的differences 的问题。我问是因为 Talend ETL 在 UI 后面执行此操作,我担心它会产生副作用,特别是如果我不想更新并执行以下操作:

String insertIgnore_tMysqlOutput_10 = "INSERT IGNORE INTO `"
+ "Employees"
+ "` (`Name`,`JobTitle`) VALUES (?,?) ON DUPLICATE KEY UPDATE `Name` = ?";

【问题讨论】:

    标签: mysql sql etl talend


    【解决方案1】:

    IGNORE 只是充当一种错误抑制器,使致命错误充当警告。

    ON DUPLICATE KEY UPDATE 不会触发错误,因此INGORE 对其没有影响。

    因此,当ON DUPLICATE KEY UPDATE 也被使用时,IGNORE 对重复键没有影响。 然而,如果发生不同的错误,那么IGNORE 确实会产生影响。

    【讨论】:

    • 嗯,我认为 Talend ETL 使用忽略是一个错误
    • 一个例子:将 NULL 插入 NOT NULL 将插入列类型默认值并静默继续
    猜你喜欢
    • 2010-10-07
    • 2015-07-30
    • 2023-02-06
    • 1970-01-01
    • 2011-06-03
    • 1970-01-01
    • 2013-10-03
    • 1970-01-01
    • 2011-01-29
    相关资源
    最近更新 更多