如何使用查询重命名MySQL数据库名称?
我rename通过phpmyadmin 尝试了数据库,并收到以下错误,
SQL query:
RENAME DATABASE test TO test_bkp
MySQL said:
#1064 - 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 test To test_bkp' at line 1
Run Code Online (Sandbox Code Playgroud)
它在这里说:
这个语句是在MySQL 5.1.7中添加的,但是发现它很危险,并在MySQL 5.1.23中删除了.它旨在使升级5.1之前的数据库能够使用5.1中实现的编码将数据库名称映射到数据库目录名称(请参见第9.2.3节"标识符到文件名的映射").但是,使用此语句可能会导致数据库内容丢失,这就是删除它的原因.不要在存在它的早期版本中使用RENAME DATABASE.
您可以将所有数据导入新数据库,然后删除旧数据库.
也可以RENAME TABLE使用与表名相同但与数据库不同的语句.有几个渔获量.
CREATE DATABASE `test_bkp`;
RENAME TABLE
`test`.`table1` TO `test_bkp`.`table1`,
`test`.`table2` TO `test_bkp`.`table2`,
`test`.`table3` TO `test_bkp`.`table3`;
Run Code Online (Sandbox Code Playgroud)