【问题标题】:Error 1062. Duplicate entry in mysql错误 1062. mysql 中的重复条目
【发布时间】:2015-04-09 18:01:13
【问题描述】:

我有一个 MySQL 表,其架构中的第 1 列是主键。 我有一个 tsv 文件,需要将其插入此表中。现在,tsv 有重复的主键,因此当我尝试将它插入 MySQL 表时它会给出错误

ERROR 1062 (23000): Duplicate entry '107664521128181760' for key
'PRIMARY'

如果主键值已经存在,是否有任何方法可以忽略并进一步移动以进行下一次插入。

【问题讨论】:

  • 你是如何插入记录的?如果它解决了您的问题,请接受答案。

标签: mysql mysql-error-1062


【解决方案1】:

您可能正在寻找 INSERT IGNORE INTO 命令。

你可以这样试试:

INSERT IGNORE INTO yourtablename(col1,col2...)
values(val1,val2,...)

【讨论】:

    【解决方案2】:

    这取决于您如何导入数据。

    如果您使用的是 LOAD DATA INFILE 命令,则在命令中使用 IGNORE:

    LOAD DATA INFILE 'member.tsv'
    IGNORE INTO TABLE tbl_member
    FIELDS TERMINATED BY '\t'
    LINES TERMINATED BY '\n'
    (name, age);
    

    如果您使用的是具有 INSERT 命令的 sql,则在 INSERT 命令中使用 INSERT IGNORE 为:

    INSERT IGNORE INTO yourtablename(col1,col2...)
    values(val1,val2,...)
    

    【讨论】:

      【解决方案3】:

      您可能正在寻找REPLACE 查询。

      REPLACE INTO Users (Phone, Name, Email) VALUES ( Phone, Name, Email);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-05-01
        • 2011-07-13
        • 1970-01-01
        • 2011-05-19
        • 2017-11-28
        • 2017-10-09
        • 2021-09-01
        • 1970-01-01
        相关资源
        最近更新 更多