冰古blog » wordpress » 2006 » 03 » 24 » 让comments的id号连续起来

让comments的id号连续起来

wordpress的post和comment的id号是自动增长的,这意味着当你删除掉一个post或comment时,他们的id号将变得不完整。

而讨厌的spam却让我们不得不删掉大量的comment,commnet的id号也随之变得越来越大(会不会影响到页面的生成呢?可能会)。

闲逛中发现一条实用的SQL语句,可以使id号变得连续起来(请不要试图将此语句用于post的id上!要不你会发现posts和comments失去了联系!。当然也不是完全不可能的,但实施起来你会发现它将花费你不少时间)。

ALTER TABLE tablename DROP id;
ALTER TABLE tablename ADD id INT NOT NULL PRIMARY KEY AUTO_INCREMENT FIRST

下面这条SQL语句可以使comment的id号变得连续(请在运行此语句前,备份你的MySQL数据库!):

ALTER TABLE wp_comments DROP comment_ID;
ALTER TABLE wp_comments ADD comment_ID INT NOT NULL PRIMARY KEY AUTO_INCREMENT FIRST

我的wp已经测试,大家看看右边的recent comments是不是能对上号?如果你发现能对上,为什么不试试呢?(再罗嗦一句,一定要先备份你的数据库啊!

提醒:安装了关于comments方面plugin的同学注意啦,运行此语句后可能使你的comments失去关联!

参考:让MySQL自增长字段号从不连续变成连续的

14 Responses to “让comments的id号连续起来”

  1. 写的不错,以后经常过来看看!一起加油!

  2. […] 这里介绍的是防 Posts 表的 ID 的跳号,关于 Comments 的 ID 号连续问题,可参见冰古blog的让 comments 的 id 号连续起来。 […]

  3. […] 再说说评论,要是觉得自己的评论id不连续,太乱,可以用这里的方法: […]

  4. yskin says:

    嗯,comment的id可以随便改的,没什么关联,不过post不行,有很多和post的id关联的。而且他自动增长,没办法啊。
    希望有人能写个程序,改掉post的id的时候自动修改其他的关联部位。

  5. Bingu says:

    我已经多次提醒要先备份啊
    不过这个语句好像只是修改id而已
    不会影响到其他数据的哦
    可能是comment插件添加了数据表,而它是与comment表的id是关联的

  6. kevin says:

    :cry::cry::cry::cry::cry::cry::cry::cry::cry::cry::cry
    :

    我好可怜啊
    我用了两个关于comments的插件
    一执行你的代码
    所有的结构面目全非

    55555555555

  7. kevin says:

    我使用了comment插件
    估计也是不能使用的

  8. Bingu says:

    嗯,还是不打posts的主意好!

  9. Fwolf says:

    对于没有关联性的表来说
    还是很有用的,使用id进行关联的就不能也千万不能这么作了。

  10. Bingu says:

    to ggwu:呵呵,小一点还感觉比较爽:mrgreen:
    to kevin:这个的确不太好办啊。

  11. kevin says:

    我希望你也能解决post的id连续
    哈哈
    我是不是太贪心了

  12. […] wordpress的数据库记录增长方式很有趣,经常会莫名其妙的多增长,从而造成记录的不连续。有人想出方法解决了留言的不连续增长,详情请阅读这里。 […]

  13. ggwu says:

    我很久以前查过资料,id号不连续对性能没影响的;)

  14. […]   让comments的id号连续起来,有类似需要的可以参考这篇文章。 […]

Leave a Reply