dedecms中mysql数据库中我们修改表名一般就是用rename来修改了,但是rename只能一次修改一个表名并不能批量处理,如果要批量处理我们需要使用遍历来操作,下面我来介绍一下mysql量修改表前缀与表名方法。
使用sql语句修改织梦的mysql数据库表前缀名:
1.请看下面的介绍步骤
Select CONCAT( 'ALTER TABLE ', table_name, 'RENAME TO ', table_name,';' ) FROM information_schema.tables Where table_name LIKE 'hx_%';
注意:like‘hx_%’其中hx_是你需要替换的表前缀。
放在sql执行器里面执行,会把所有hx_前缀的表全部列出来。这个时候导出txt,删除不相关的语句,留altertable就可以,然后批量替换RENAMETOhx成RENAMETO你想要的表前缀;然后在sql执行器执行。
2.织梦dede的data目录中的$cfg_dbprefix='改为现在的表前缀_';
重新登录后台看看。如果是通过备份还原文件,也是可以,就是麻烦些,备份后,下回来backdata文件夹里所有文件,把所有文件打开,替换里面表前缀,然后所有带有表前缀的文件名也改为新的表前缀,再上传dede中备份还原,记得上传前,先把空间里原来备份删除。
如果是要批量删除所有带有hx_表,可以用以下方式,同样先到phpmyadmin中的mysql执行器,输入以下sql语句:
Select CONCAT( 'drop table ', table_name, ';' ) FROM information_schema.tables Where table_name LIKE 'hx_%';
说明:like‘hx_%’其中hx_是你需要替换的表前缀。
执行查询,会自动生成出droptabletable_name这样的SQL语句。
然后复制drop语句可以执行删除的操作了。