无法使用以下查询重命名数据库。我正在使用mysql2
RENAME DATABASE a to b;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'database a to b' at line 1
我是mysql的新手。什么是正确的语法?
答案 0 :(得分:1)
该命令已删除,请参阅 - dev.mysql.com/doc/refman/5.1/en/rename-database.html。请改用ALTER DATABASE。
答案 1 :(得分:0)
我认为您应该创建一个新数据库并重命名这些表,以便它们位于新数据库中,之后可以删除旧数据库。
在此处查找更多内容:https://blog.marceloaltmann.com/how-to-rename-a-database-in-mysql/
但基本上是这样的:
CREATE DATABASE my_new_database;
RENAME TABLE my_old_database.tbl_name TO my_new_database.tbl_name;
DROP DATABASE my_old_database;
使用上面链接中的脚本将允许您使用所有表格,因此几乎可以自动完成。
(我的意思是:SELECT CONCAT('RENAME TABLE ', GROUP_CONCAT( table_schema,'.',table_name, ' TO ','new_schema.',table_name,' '),';') as stmt FROM information_schema.TABLES WHERE table_schema LIKE 'oldSchema' GROUP BY table_schema
)