gpt4 book ai didi

mysql - INSERT INTO...SELECT - 主键冲突 - 错误 #1062

转载 作者:行者123 更新时间:2023-11-29 07:59:27 25 4
gpt4 key购买 nike

我有一个数据库:groupofficecom 有两个表:

cal_events: id(Primary key), name, start_time, description,....
cf_cal_events: model_id (Primary key), col_1, col_2, col_3,....

我正在尝试执行以下代码:

INSERT INTO groupofficecom.cf_cal_events (model_id,col_1,col_2,....)
SELECT groupofficecom.cal_events.ID, '0' AS col_1, '' AS col_2,....
FROM groupofficecom.cal_events

但它一直给我错误 #1062 - 键“PRIMARY”的重复条目“155”(“155”是 cal_events 中的“id”)

我希望主键 model_id 与 cal_events 中的 id 值相同,因为表 cf_cal_events 只是 cal_events 的互补字段(这是一个程序,所以我无法更改其数据库,它将在第一次更新时消失)

谢谢大家!

最佳答案

这意味着目标表中已经存在具有该 id 的条目。首先,检查一下这是怎么回事。

然后,根据需要使用此处描述的解决方案之一: "INSERT IGNORE" vs "INSERT ... ON DUPLICATE KEY UPDATE"即更新或忽略。

您应该将 ORDER BY 与您所选择的内容和上面的解决方案结合使用,以选择忽略哪些条目(除了第一个条目之外的所有条目)。

您也可能想要完全不同的东西,即使用 UPDATE 语句而不是 INSERT 语句。

关于mysql - INSERT INTO...SELECT - 主键冲突 - 错误 #1062,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24260342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com