在帝国CMs的使用中,随着时间的推移,网站会越来越大,这个时候不免会有分表的情况出现。

帝国CMS分表建立

首先进入到帝国的后台,点击系统-数据表与系统模型-管理数据表,接下来就可以看到熟悉的画面了

在这里,找到自己需要修改或迁移的数据库,然后点击后边的管理分表即可

打开分表后,点击增加,并将最新建的副表设为当前存放表。这里虽然说可以自己设置分表名称,但为了后边的操作方便,建议大家还是使用默认的数字分表就可以,不要随便的去更改。

接着就可以来到sql后台进行操作了,这里需要用到sql命令行,如果你不是很懂得话,也可以使用PhpMyadmin进行操作,这里为了大家能够看得明白 ,看下列截图:

帝国CMS分表数据转移

进入phpmyadmin后,点击需要操作的数据库,然后不要在右边点数据库,直接点SQL进入到命令操作行,在pma面板上大写的哦

在这里大家就可以输入自己心仪的命令了

INSERT INTO phome_ecms_news_data_2
SELECT * FROM phome_ecms_news_data_1 T2
WHERE T2.ID>= 50001 AND T2.ID<= 100000;
update phome_ecms_news set stb=REPLACE(stb,1,2)
WHERE ID>= 50001 AND ID<= 100000;

解释下这段代码的意思:

第一句:在phome_ecms_news数据表第2分表插入行
第二句:将phome_ecms_news数据表第1分表数据复制到数据表第2分表
第三句:限制即将复制的数据信息ID范围为50001到100000
第四句:更改数据表phome_ecms_news中分表ID以便查询【stb=REPLACE(stb,1,2)中表三就是stb=REPLACE(stb,1,3),表四就是stb=REPLACE(stb,1,4),以此类推】
第五句:限定即将修改的phome_ecms_news分表ID范围为50001到100000

 

命令执行完成之后,在phome_ecms_news_data_1分表中原有ID范围为50001到100000的数据已经没用了,需要将它清除掉以节省数据空间,删除命令如下:

DELETE FROM phome_ecms_news_data_1 WHERE ID>= 50001 AND ID<= 100000;

代码释义:删除原信息范围为50001到10000的信息

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。