PHP--修改数据库表前缀
<?php
// error_reporting(0);
//设置好相关信息
$dbserver='localhost';//连接的服务器一般为localhost
$dbname='jfpay';//数据库名
$dbuser='root';//数据库用户名
$dbpassword='';//数据库密码
$old_prefix='pay_';//数据库的前缀
$new_prefix='new_';//数据库的前缀修改为
if ( !is_string($dbname) || !is_string($old_prefix)|| !is_string($new_prefix) ){
return false;
}
//PHP5.0开始mysql_connect()就不推荐使用了,到PHP7.0就直接被废弃了
// mysqli_connect()
$con = mysqli_connect($dbserver, $dbuser, $dbpassword,$dbname);
if (mysqli_connect_errno($con))
{
echo "连接 MySQL 失败: " . mysqli_connect_error();
} //取得数据库内所有的表名
//$result = mysql_list_tables($dbname);
//没有mysqli_list_tables()函数,使用mysqli_query() 代替
$result = mysqli_query($con, "SHOW TABLES");
if (!$result){
echo 'MySQL Error: ' . mysqli_error();
exit;
} //把表名存进$data
while ($row = mysqli_fetch_row($result)) {
$data[] = $row;
}
//过滤要修改前缀的表名
$preg = false;
foreach($data as $k => $v){
$preg = preg_match("/^($old_prefix{1})([a-zA-Z0-9_-]+)/i", $v[0], $v1);
if($preg){
$tab_name[$k] = $v1[2];
}
}
if($preg){
foreach($tab_name as $k => $v){
$sql = 'RENAME TABLE `'.$old_prefix.$v.'` TO `'.$new_prefix.$v.'`';
mysqli_query($con, $sql);
}
echo '数据表前缀:'.$old_prefix."已经修改为:".$new_prefix."<br/>";
}else{ echo '您的数据库表的前缀'.$old_prefix.'输入错误。请检查相关的数据库表的前缀';
if ( mysqli_free_result($result) ){
return true;
}
}
PHP--修改数据库表前缀的更多相关文章
- ABP框架源码学习之修改默认数据库表前缀或表名称
ABP框架源码学习之修改默认数据库表前缀或表名称 1,源码 namespace Abp.Zero.EntityFramework { /// <summary> /// Extension ...
- ABP框架入门踩坑-配置数据库表前缀
配置数据库表前缀 ABP踩坑记录-目录 本篇其实和ABP关系并不大,主要是EF Core的一些应用-.-. 起因 支持数据库表前缀应该是很多应用中比较常见的功能,而在ABP中并没直接提供这一功能,所以 ...
- Next Cloud通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享链接地址
Next Cloud如何通过修改数据库表,达到替换文件而不改变分享的链接地址的效果,以及自定义分享的链接地址 本文首发于我的个人博客:https://chens.life/nextcloud-chan ...
- 修改DEDE系统数据库表前缀
1,修改之前我们先备份下数据(哥们儿之前没有备份,我艹,害苦了),备份的操作过程是:网站后台------系统------数据库备份/还原-------然后按提交.默认保存的数据在data/backup ...
- 修改数据库表的schema,(表的[dbo.]前缀)
数据库使用过程中遇到这种问题,请看下图
- dedecms数据库表前缀不一样怎么还原数据
我们在用dedecms建站时,安装一般都“下一步”直接往下点,这样默认的表前缀是dede_,如果我们要还原从其他地方拷贝过来的数据,一定要注意表头是否一致.如果表头不一样怎么办呢?有两种方法,第一种, ...
- 更改已安装的织梦dedecms系统数据库表前缀
1 修改之前我们先备份下数据,备份的操作过程是:网站后台------系统------数据库备份/还原-------然后按提交.默认保存的数据在data/backupdata目录下. 2 修改目录下da ...
- Magento模块升级修改数据库表结构
Magento支持在模块中创建.删除.更新数据库表及字段.通过该方式,在插件开发的过程中,添加和修改字段变成了一件非常轻松的事情.只需要修改模块的版本号,同时在文件中添加一个符合命名规则的脚本就可以了 ...
- mysql数据库连接状态,不要做修改数据库表结构的操作;数据库迁移操作;
在开发过程中,python的flask框架使用sqlalmysql连接mysql数据库. 在程序连接数据量过程中,不要修改数据表的结构.比如在连接状态中使用下面的软件修改数据表结构,这个软件立即就会卡 ...
随机推荐
- JavaScript—飞机大战2版
前面的思路对了 BUG 出在了计时器和没有加判断页面是否存在元素 <!DOCTYPE html> <html lang="en"> <head> ...
- 萤火虫系统(firefly) RK3399 python3 安装 spicy
最近一直在研究深度学习,公司里正好也有个项目是需要在RK3399的板子上跑人脸识别. 原本在linux_x86系统上轻轻松松装的环境到了RK3399板子上(firefly系统)安装起来真的非常麻烦,需 ...
- 精讲 使用ELK堆栈部署Kafka
使用ELK堆栈部署Kafka 通过优锐课的java架构学习分享,在本文中,我将展示如何使用ELK Stack和Kafka部署建立弹性数据管道所需的所有组件. 在发生生产事件后,恰恰在你最需要它们时,日 ...
- 循环队列--忘记分配空间和如何用tag判断队空队满
#include<iostream> #define maxsize 100 using namespace std; struct CLqueue { int *Q; int front ...
- Deep-Learning-with-Python] 文本序列中的深度学习
https://blog.csdn.net/LSG_Down/article/details/81327072 将文本数据处理成有用的数据表示 循环神经网络 使用1D卷积处理序列数据 深度学习模型可以 ...
- 关于live2D的使用
<script src="https://eqcn.ajz.miesnfu.com/wp-content/plugins/wp-3d-pony/live2dw/lib/L2Dwidge ...
- win10下安装cygwin全过程
简单讲:cygwin就是在windows系统上跑linux和unix的环境,跨平台移植的应用程序移植. 安装步骤: 下载cygwin: 打开官网https://cygwin.com/install.h ...
- Eclipse打包Jar单独使用
今天做了一个刷***的功能,代码很简单,只有几十行代码,我开始是在eclipse里面跑的,后面觉得在里面跑不舒服,我就想把他单独作为一个jar文件单独运行,里面使用了第三方jar包,下面记录一下步骤. ...
- c++语法(1)
#include<iostream> #include<windows.h> using namespace std; class Parents { public: ; // ...
- 小白学习之pytorch框架(4)-softmax回归(torch.gather()、torch.argmax()、torch.nn.CrossEntropyLoss())
学习pytorch路程之动手学深度学习-3.4-3.7 置信度.置信区间参考:https://cloud.tencent.com/developer/news/452418 本人感觉还是挺好理解的 交 ...