2015-10-12 54 views
-4

我目前正试图重新安排我的数据库,并想优化所有帖子的ID在一个表开始后ID。如何重新安排从一开始

我有一些后,他们每个人都有一个ID,但考虑到一些职位已经被删除有洞:

post-one: ID => 1 
// 2 is missing 
post-two: ID => 3 
// 4 -> 6 are missing 
post-three: ID => 7 
.. 

所以我只有五十职位,但过去后ID是280优化后我想有这样的结果:

post-one: ID => 1 
post-two: ID => 2 
post-three: ID => 3 
.. 

我搜索在谷歌,只是在这里,但没有找到,但MySQL Optimize文件,但它并没有真正帮助了我。

如何重新排列所有的ID?

+0

你为什么要这样做?究竟什么是“最优”?你真的想要解决什么问题?你不太可能用完整数......(我想这将是很多工作,因为可能有分散在数据库中的所有后缀ID,包括在序列化的PHP数据中......) –

+0

嗨,感谢您的答复。我编辑了我的帖子,并添加了更多关于我的问题以及我想要做什么的解释。 – TyrionGraphiste

+1

如果你想风险你的一天,谷歌“MySQL自动增量重置”?不要忘记帖子ID是外键其他表。可能会创建一个新的WordPress的安装和从旧的导出和导入帖子。不要将此过程称为优化。我不知道你的用例! - 你是否试图用序列号美化你的帖子网址? – Gowri

回答

3

答案很简单,不要这样做,期限。您将填补帖子及其相关术语,评论,自定义字段,其他相关元信息和作者信息之间的所有关系

Wordpress使用帖子ID创建帖子元数据之间的关系(如缩略图,图像,视频'等),评论,条款和自定义字段。帖子ID也用于在分层帖子类型的帖子(如页面)之间创建父子关系。所有上述内容都存储在数据库中的其他表格中,而不是存储在wp_posts(除了帖子之间的父子关系除外)。如果您更改wp_posts中的帖子ID,该帖子将丢失与其相关的所有其他数据。如果新的帖子ID以前用于其他帖子,则新帖子将简单地继承附加到其他帖子的所有数据

不要打开这个蠕虫罐,如果您更改帖子ID,则没有改变一切的方式,除了从备份

+0

好的,谢谢!我知道每张桌子之间都有关系,我认为我们可以动态组织。 所以我要删除(并保存)我的BDD并从一个新的开始。 – TyrionGraphiste

+0

根本没有帮助。发布修订和所有附件保存为帖子。因此,第1篇将修订和自动保存保存为帖子ID 2和3,因此第2帖将是ID 4.您将工作到无限循环的无意义点 –

+0

如果删除附件和修订版,您将再次有“ID洞” –