【问题标题】:INSERT SELECT, Duplicate entry '0' for key 'PRIMARY' without overwriting other tableINSERT SELECT,为键“PRIMARY”复制条目“0”而不覆盖其他表
【发布时间】:2014-05-24 12:40:28
【问题描述】:

这是我的第一个问题,如果有人问过这个问题,请多多关照。 而且我的英语不是很好;) 我有一个 XAMPP MySQL 服务器并想要创建一个 INSERT SELECT 语句,但如果我运行该语句,我会收到此错误:#1062 - Duplicate entry '0' for key 'PRIMARY' 这是我的 SQL 语句:INSERT INTO amt (Bezeichnung) SELECT Bezeichnung FROM fach

但我不想覆盖表“amt”,它应该只附加在表 fach 上。

我要加这张表picture of table "fach" 对此。 picture of table "amt"

“Bezeichnung” = GER,描述; "amt" = GER,函数

【问题讨论】:

    标签: mysql sql select insert-into


    【解决方案1】:

    您需要将您的 ID 列设置为自动递增:

    ALTER TABLE `amt` MODIFY COLUMN `id_amt` INT auto_increment
    

    【讨论】:

      【解决方案2】:
      INSERT INTO amt (id_amt, Bezeichnung)
      SELECT (select coalesce(max(id_amt), 0) + 1 from amt), Bezeichnung
      FROM fach
      

      【讨论】:

      • 不,抱歉,此语句无效。 #1062 - 键 'PRIMARY' X = 15+numbersOfTrys 的重复条目 'X'
      猜你喜欢
      • 2015-04-20
      • 1970-01-01
      • 2013-09-03
      • 2017-08-07
      • 2018-02-20
      • 2014-09-04
      • 2023-03-07
      • 2018-07-11
      • 2012-08-24
      相关资源
      最近更新 更多