如何批量修改MYSQL的表前缀名称

2016-08-19 07:47:31 16261

使用sql语句修改mysql数据库表前缀名

首先我们想到的就是用sql查询语句来修改,这个方法也很方便,只需进入phpmyadmin,在运行 SQL 查询框中输入如下语名就可以了。

ALTER TABLE 原表名 RENAME TO 新表名;

如:

ALTER TABLE old_post RENAME TO new_post;

Sql查询语句有一个缺点,那就是一句SQL语句只能修改一张数据库的表名,如果你要精确修改某一张表,很好用。如果数据库表很多的话,不推荐使用。

方法二:php脚本批量修改mysql数据库表前缀

1、将下面的代码复制到记事本,根据自己人情况修改好数据库信息,并保存了landui_sql.php。再上传您网站的根目录。

view sourceprint?

1<?php
2//设置好相关信息
3$dbserver='localhost';//连接的服务器一般为localhost
4$dbname='y8n9nghmze_shop';//数据库名
5$dbuser='y8n9nghmze_user';//数据库用户名
6$dbpassword='admin';//数据库密码
7$old_prefix='ecs_';//数据库的前缀
8$new_prefix='51php_';//数据库的前缀修改为
9if (
10 !is_string($dbname) || !is_string($old_prefix)|| !is_string($new_prefix) )
11{
12return false;
13}
14if (!mysql_connect($dbserver,
15 $dbuser, $dbpassword)) {
16print 'Could not connect to mysql';
17exit;
18}
19
20//取得数据库内所有的表名
21
22$result =
23 mysql_list_tables($dbname);
24
25if (!$result) {
26
27print "DB Error, could not
28 list tables ";
29
30print 'MySQL Error: ' .
31 mysql_error();
32
33exit;
34
35}
36
37//把表名存进$data
38
39while ($row =
40 mysql_fetch_row($result)) {
41
42$data[] = $row[0];
43
44}
45//过滤要修改前缀的表名
46foreach($data as $k => $v)
47{

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: