标签: 〖栏目〗


怎样删除ECMS演示数据并让栏目从1开始编号?

删除初始化时的ECMS数据比较简单,WC说,删除所有栏目就可以了(实际上是删除9个一级栏目下级也就一并删除了),但是,当你开始做自己的内容时,你会发现一个恼人的问题,你的第一个栏目ID=58 !,为什么?因为系统演示用了57个栏目,你虽然现在删除了,可ECMS是不重用栏目ID的!

其实如果你不在意,也没有什么实际影响,如果你像我一样计较这点,教你一招,就是在“后台/系统设置/执行SQL语句”处键入:

TRUNCATE TABLE phome_enewsclass

按“执行SQL”钮,记得去“数据更新”处做“更新数据库缓存”和“删除栏目缓存文件”。

如此这般,再回到“栏目管理/管理栏目/增加栏目”试增加栏目看看,ID编号是不是从1 开始了?

最后还是那句话,一切非常规操作之前,首要的事情是备份数据,俗话说“有备无患”——有备份才没有后忧嘛。

发表评论

解决了ECMS删除栏目后栏目ID不连续编号(断号)问题

本人小站改版,想增加一个一级栏目,现在栏目ID已到79,但以前初建站时曾删除过2、3两个栏目,想乘此机会把栏目ID不连续问题给一并解决了,不只是逻辑上此一级栏目ID应当是2或3,还有以前模板中导航条生成时,似乎一级栏目是两位数时还要怎么处理一下的,也不知现在还有此问题没?

回到正题,我思路是这样的,先建立ID=79的栏目,再用后台的批量替换字段功能将所有表的classid="79"替换为classid="2",实际一操作才知道不是那么回事,批量替换字段功能只对数据模型表适用,没有选择其他系统表的机会,这样就只能用SQL语句功能了,在某帖子中得知栏目表名为phome_enewsclass,在后台执行SQL语句:

update phome_enewsclass set classid=’2′ where classid=’79′

回到栏目管理,骇然发现ID=79的栏目没有变过来,又回头到论坛搜索问题何在,原来SQL执行完成,还要在后台数据更新处进行更新数据库缓存、删除栏目缓存文件等操作,不知道再增加新栏目时哪里还有无机关,因为系统是知道最后用过的最大ID号的,即使删除了它还记得,否则也不会出现断号情况了,仔细观察了下,在phome_enewsclass表中classid 字段的“额外”属性是 “auto_increment(自动增量)”,不知是MySQL通过这个属性在管理最大ID号,还是WC另有存储用过的ID值的地方?万一WC看到,请指教一下。跳号问题不影响使用,但相信很多人会像我一样觉得别扭。

提醒:任何没把握的操作之前记得备份数据库哦,世上没有后悔药,小心行得万年船。

发表评论