数据库的重命名

Posted scmath

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库的重命名相关的知识,希望对你有一定的参考价值。

假设:有一个数据库,名称为A,需要修改为B。 
在Navicat中不可以按F2修改数据库的名称,我们必须新建一个库,命名为B。 
下面4种方式都可以实现目标。如果数据库中有远程表和权限设置,推荐使用第四种方式。

 

1、如果数据库A中的表和设置比较简单,直接复制数据库A中所有表,粘贴到数据库B即可。

2、在A数据库上右击 –> 转储SQL文件 –> 结构和数据 ; 在B数据库上右击 –> 运行SQL文件。

  执行速度:最慢。

3、选择菜单栏:工具 –> 数据传输(源库为A,目标库为B) –> 开始,传输完成后,刷新数据库B。

  如果数据库A中存在远程表的话,操作会报错,错误信息为:
  [Err] [Dtf] 1432 - server name: ‘‘ doesn‘t exist!
  因此,你需要先将数据库中所有远程表的DDL语句复制到一个txt文件中,再删除数据库中的所有远程表。再次执行本操作。最后,将保存在txt文件中的所有DDL语句在B库上执行一遍即可。实现原理:复制粘贴。执行速度:中等。

4、重命名数据库A中的所有表,两个库需在同一服务器。(推荐)

  执行下面的SQL语句,查询结果为重命名表的sql脚本集合:

select CONCAT(RENAME TABLE ,TABLE_SCHEMA,.,TABLE_NAME, to , B.,TABLE_NAME,;) 
from information_schema.`TABLES` where TABLE_SCHEMA = A;   

  复制所有结果行,将其作为sql脚本执行。执行速度:最快。



原文链接:https://blog.csdn.net/gnd15732625435/article/details/80251630









以上是关于数据库的重命名的主要内容,如果未能解决你的问题,请参考以下文章

Python之如何优雅的重试

数据库的重命名

获取 Perl 重命名实用程序而不是内置的重命名

如何扩展 Eclipse 的重命名重构以在完成后触发另一个重构

git gui app 显示检测到的重命名

Bat批处理:批量重命名包含指定名称文件夹里的指定文件