我希望将一个WordPress网站的评论表附加到另一个。用户不同。当我将评论从站点B导入A时,我遇到了一个重复的密钥问题; comment_id已被采用。
那么如何解决这个问题并在表中添加一个简单的.sql文件呢?我是否必须获取用户信息,生成新用户,检查站点B上的评论,提取内容和postID,然后返回站点A并为新创建的用户重新创建评论!?
多么头疼!感谢。
答案 0 :(得分:0)
如果你唯一的问题是重复的密钥问题,请在之后转到sql文件的末尾
ENGINE=MyISAM
并使它
ENGINE=MyISAM AutoIncrement=a nubmer above the last id in the new database
或
查询最后一个id的数据库A,然后添加一个并在新的插入查询中使用它。
示例1:
CREATE TABLE IF NOT EXISTS `movies` (
`id` int(255) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`year` int(4) NOT NULL,
`size` varchar(255) NOT NULL,
`added` date NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `title` (`title`,`year`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
我转储的插入内容:
INSERT INTO `movies` (`title`, `year`, `size`, `added`) VALUES
('[REC] 2', 0, '716688', '2011-09-23'),
('5 Days of War', 0, '1435406', '2012-01-09'),
('[REC]', 0, '1353420800', '2011-11-06');
查看我在我的包含中未包含PRIMARY KEY (id)
的方式,但仍会检查我的UNIQUE KEY
并查看标题是否存在。只是一个小小的演示,希望有所帮助。如果您的表已经存在于新数据库中,那么只需跳过插入并且不包括主键,它将在新插入时自动设置为下一个可用值。