本文实例讲述了php+mysqli实现批量替换数据库表前缀的方法。分享给大家供大家参考。具体分析如下:
在php中有时我们要替换数据库中表前缀但是又不苦于一个个表去修改前缀,这里我自己写了一个mysqli批量替换数据库表前缀的php程序,感兴趣的朋友可以参考一下,代码如下:
<?php header ( 'http-equiv="Content-Type" content="text/html; charset=utf-8"' ); $DB_host = "localhost"; //数据库主机 $DB_user = "root"; //数据库用户 $DB_psw = "root3306"; //数据库密码 $DB_datebase = "gk_yue39_com"; //数据库名 $DB_charset = "utf8"; //数据库字符集 $dbprefix="yue392_com_"; $new_dbprefix="yue39_com_"; $db = new mysqli ( $DB_host, $DB_user, $DB_psw ); //实例化对象 //检查连接 if (mysqli_connect_errno ()) { printf ( "Connect failed: %sn", mysqli_connect_error () ); exit (); } $db->select_db ( $DB_datebase ); //选择操作数据库 $db->set_charset ( $DB_charset ); //设置数据库字符集 //执行一个查询 $sql = 'show tables'; $result = $db->query ( $sql ); echo $result->num_rows . ' 行结果 ' . $result->field_count . ' 列内容<br/>'; //$result->data_seek('5');//从结果集中第5条开始取结果 echo '<table border="1" cellspacing="0" cellpadding="0" align="center" width="90%">'; //循环输出字段名 //$result->field_seek(2);//从字段集中第2条开始取结果 while ( true == ($field = $result->fetch_field ()) ) { echo '<th>' . $result->current_field . '_' . $field->name . '(' . $field->length . ')</th>'; } //循环输出查询结果 while ( true == ($row = $result->fetch_assoc ()) ) { echo '<tr>'; foreach ( $row as $col ) { $sql="rename table `".$col."` to `".str_replace ( $dbprefix, $new_dbprefix, $col)."`"; if($db->query ( $sql )){ echo '<td align="center">' . $sql. '</td><td><font color="blue"> success</font></td>'; }else{ echo '<td align="center">' . $sql. '</td><td><font color="red"> failed</font></td>'; } } echo '</tr>'; } echo '</table>'; $result->free ();//释放结果集 $db->close (); //关闭连接 ?>
第二种方法:如何批量修改MYSQL的数据库表前缀名称
批量修改表名的操作方法,以下操作请用navicat操作即可,快捷方便:
SELECT CONCAT( ‘ALTER TABLE ‘, TABLE_NAME, ‘RENAME TO ‘, TABLE_NAME,‘;' )
FROM information_schema.TABLES
WHERE TABLE_NAME LIKE ‘uc_%';
执行后得到如下的结果:
ALTER TABLE uc_aaa RENAME TO uc_aaa;
ALTER TABLE uc_bbb RENAME TO uc_bbb;
保留如下的数据:
ALTER TABLE uc_aaa RENAME TO uc_aaa;
ALTER TABLE uc_bbb RENAME TO uc_bbb;
然后选择要修改的数据库,执行上面得到的SQL语句就可以修改掉数据库表前缀了。
附:1、批量删除指定前缀的表
SELECT CONCAT( ‘drop table ‘, TABLE_NAME, ‘;' )
FROM information_schema.TABLES
WHERE TABLE_NAME LIKE ‘uc_%';
2、“dbtable_name”改成“db_table_name”
SELECT CONCAT( ‘ALTER TABLE ‘, TABLE_NAME, ‘RENAME TO db_', SUBSTRING(TABLE_NAME,3),‘;' )
FROM information_schema.TABLES
WHERE TABLE_NAME LIKE ‘db%';
第三种方法:
今天更新一个mysql数据库表前缀的另一个方法,这个方法使用也非常简单,就是用第三方工具——帝国备份王进行修改。操作方法如下:
1、登录帝国备份后台,选择“备份数据”—— “批量替换表名”,然后执行操作就可以完成批量替换了,也非常简单。如下图:
如何批量修改mysql的表前缀名称
以上方法都可修改网站前缀,不过大多数的开源程序修改表缀后,再需要修改网站程序的数据库配置文件,才会让网站网站的运行。
希望本文所述对大家的php程序设计有所帮助。

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

php判断有没有小数点的方法:1、使用“strpos(数字字符串,'.')”语法,如果返回小数点在字符串中第一次出现的位置,则有小数点;2、使用“strrpos(数字字符串,'.')”语句,如果返回小数点在字符串中最后一次出现的位置,则有。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Dreamweaver Mac version
Visual web development tools

Notepad++7.3.1
Easy-to-use and free code editor

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

SublimeText3 Mac version
God-level code editing software (SublimeText3)
