【发布时间】:2011-10-02 05:32:52
【问题描述】:
我有这个查询,我想从表 home 中插入表 exp_channel_data 数据,但它插入 7 和 8 个条目,然后返回错误:
[Err] 1062 - 键“PRIMARY”的重复条目“8”
这是我的查询(我将字段缩减为可读):
INSERT INTO exp_channel_data (entry_id,site_id,channel_id,field_id_1) SELECT 7,1,1,summary FROM homes ON DUPLICATE KEY UPDATE entry_id = entry_id+1
【问题讨论】:
-
桌子上的主键和唯一键是什么?
-
entry_id是主键吗?我认为您正在尝试通过增加 id 来插入具有相同 id 的新记录,但这当然是行不通的。ON DUPLICATE KEY UPDATE entry_id = entry_id+1将更改已经在表上的记录的entry_id,而不是将要插入的记录。 -
在 exp_channel_data 上,主要是没有 auto_increment 的 entry_id,而在家庭中,主要和 auto_increment 是 id 字段。在 exp_channel_data 中已经有一些 entry_id = 2,3,4,5,6 的条目,这就是为什么我开始选择 7
-
@Shef 如何更改要插入的那个。我想从 home 表中取出所有条目并将它们插入到 exp_channel_data 表中
-
homes表有哪些字段?
标签: mysql