有一个数据库,名称为a,需要修改为b。在navicat中不可以按f2修改数据库的名称,我们必须新建一个库,命名为b。下面4种方式都可以实现目标。如果数据库中有远程表和权限设置,推荐使用第四种方式。
推荐教程:navicat图文教程
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脚本执行。执行速度:最快。
注:为了防止不可知的意外发生,所以请在执行操作前,备份你的数据库!!
以上就是navicat怎么修改数据库名的详细内容。