批量修改ecshop等php程序表名前缀的两个方法

1.  批量修改表名前缀有个很简单的方法,你们使用到的帝国备份王等工具就自带此功能: php

批量修改ecshop等php程序表名前缀的两个方法

批量替换表名的地方,看清楚了吗? sql

2. 第二个方法你们网上有说:将下面的代码保存到edit_table.php中放到网站根目录直接运行便可 数据库

 <?php 缓存

define(‘IN_ECS’, true); session

require(dirname(__FILE__) . ‘/includes/init.php’); 工具

$sql = “show tables”;
$rows = $db->query($sql);
$old_prefix = ‘ecs’;
$new_prefix = ‘test_’;
$dataname = “utf273″; fetch

while($row = $GLOBALS['db']->fetchRow($rows)){
$arr = explode(“_”,$row['Tables_in_'.$dataname]);
if($arr[0] == $old_prefix){//保证要替换的是表的前缀
$new_table_name = str_replace($old_prefix.”_”, $new_prefix, $row['Tables_in_'.$dataname]);//替换前缀
}
$sql = ‘rename table ‘.$row['Tables_in_'.$dataname].’ TO ‘.$new_table_name;
if($GLOBALS['db']->query($sql)){
echo ‘rename table ‘.$row['Tables_in_'.$dataname].’ TO ‘.$new_table_name.”<br />”;
}
} 网站

 转载请带最模板网址,不带网址的MJJ! ui

?> spa

这个方法有时会报错就是报ecs_session表找不到的错误,这个是由于,更新表以后,会执行更新ecs_session表的语

句,应该是由于没有清除缓存的缘由,这个地方报错。

 

其实还有第三个方法,很简单,直接用phpmyadmin导出数据库表,而后用EditPlus打开表内容,来个批量替换,再

导入回去。新手看不清楚就把库替换坏了,不建议! 但最模板经常使用!

最模板建议你们用第一个方法,直观,方便,不容易出错! 替换其余程序也是如此! 

相关文章
相关标签/搜索