数据迁移中键'PRIMARY'的重复条目'1'

时间:2013-05-26 19:27:17

标签: mysql sql database

我正在尝试将表A中的posts表中的数据复制到数据库B中的post表中。 数据库B有一个空白的邮政表,其模式与A不同。

以下是我提出的查询:

INSERT INTO b.post (post_id, thread_id, user_id, username, post_date) SELECT 
                     postid,  threadid,  userid,  username, dateline FROM a.post;

但是当我运行上面的命令时,我从mysql CLI获取

  

ERROR 1062(23000):密钥'PRIMARY'重复输入'1'

我该如何解决这个问题?

P.S。数据库b用于新的Xenforo论坛和表格,以便迁移Vbulletin论坛。我不介意在b上覆盖数据,但显然我想保持架构完好无损。

1 个答案:

答案 0 :(得分:0)

只需删除主键约束。

ALTER TABLE tablename DROP PRIMARY KEY

<强> Edit

但显然我想保持架构完整。

INSERT INTO b.post (post_id, thread_id, user_id, username, post_date) 
SELECT postid,  threadid,  userid,  username, dateline FROM a.post 
group by postid;

请注意:由于post_id是主键,有些记录会丢失

请阅读 Primary Key