将记录从一个表移动到另一个表

时间:2017-03-29 17:37:11

标签: php mysql

我有两个表 - postsparchive具有相同的结构,并希望将记录从一个表移动到另一个表。

id列是主键 - 自动增量。

insert into posts select * from parchive where id...

错误:

  

未捕获PDOException:SQLSTATE [23000]:完整性约束违规:1062重复条目' 70'关键' PRIMARY' ...

第二次尝试:

insert into posts select date, title, subtitle, intro, story, img, tags,...

除了id以外,所有内容都被选中。

错误:

  

未捕获的PDOException:SQLSTATE [21S01]:插入值列表与列列表不匹配:1136列数与值计数不匹配

任何帮助?

1 个答案:

答案 0 :(得分:1)

从我上面的评论中。如果您只想将数据插入特定字段,则必须在表格后指定这些字段:

insert into posts (date, title, subtitle, intro, story, img, tags,...) select date, title, subtitle, intro, story, img, tags,... 

我认为可能值得探讨为什么在插入ID时会遇到重复的唯一键错误。如果您的ID在主表中自动生成,则在归档表中不自动生成以便ID匹配是有意义的。