批量修改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打開表內容,來個批量替換,再

導入回去。新手看不清楚就把庫替換壞了,不建議! 但最模板經常使用!

最模板建議你們用第一個方法,直觀,方便,不容易出錯! 替換其餘程序也是如此! 

相關文章
相關標籤/搜索