MySQL 的Rename Table语句
2015-06-19 15:29
465 查看
mysql 命令重命名表RENAME TABLE 句法
RENAME TABLE tbl_name TO new_tbl_name[, tbl_name2 TO
new_tbl_name2,...]
更名是以原子方式(atomically)执行,这就意味着,当更名正在运行时,其它的任何线程均不能该表。这使得以一个空表替换一个表成为可能。
CREATE TABLE new_table (...);
RENAME TABLE old_table TO backup_table, new_table TO old_table;
改名是从左到右执行的,这就意味着,如果你希望交换两个表名,你不得不这样做:
RENAME TABLE old_table TO backup_table,
new_table TO old_table,
backup_table TO new_table;
只要两个数据库在同一个磁盘上,你也可以从一个数据库更名到另一个数据库:
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
当你执行 RENAME 时,你不能有任何锁定的表或活动的事务。你同样也必须有对原初表的 ALTER 和 DROP 权限,以及对新表的 CREATE 和 INSERT 权限。
如果在多表更名中,MySQL 遭遇到任何错误,它将对所有被更名的表进行倒退更名,将每件事物退回到最初状态。
RENAME TABLE 在 MySQL 3.23.23 中被加入。
RENAME TABLE tbl_name TO new_tbl_name[, tbl_name2 TO
new_tbl_name2,...]
更名是以原子方式(atomically)执行,这就意味着,当更名正在运行时,其它的任何线程均不能该表。这使得以一个空表替换一个表成为可能。
CREATE TABLE new_table (...);
RENAME TABLE old_table TO backup_table, new_table TO old_table;
改名是从左到右执行的,这就意味着,如果你希望交换两个表名,你不得不这样做:
RENAME TABLE old_table TO backup_table,
new_table TO old_table,
backup_table TO new_table;
只要两个数据库在同一个磁盘上,你也可以从一个数据库更名到另一个数据库:
RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
当你执行 RENAME 时,你不能有任何锁定的表或活动的事务。你同样也必须有对原初表的 ALTER 和 DROP 权限,以及对新表的 CREATE 和 INSERT 权限。
如果在多表更名中,MySQL 遭遇到任何错误,它将对所有被更名的表进行倒退更名,将每件事物退回到最初状态。
RENAME TABLE 在 MySQL 3.23.23 中被加入。
相关文章推荐
- mysql 触发器
- MySQL优化之——函数
- Mysql字符串字段判断是否包含某个字符串的2种方法
- mysql 设置编码格式为utf8
- MySQL的基本操作
- mysql grant
- MySQL优化之——运算符
- windows 7 64位下配置mysql64位免安装版
- MySQL判断表中是否存在某一字段
- MySQL优化之——查看字段长度
- Mysql 多表联合查询效率分析及优化
- MySQL优化之——数据类型宽度
- mysql远程链接不上,本地可以链接
- Mysql 5.6 主从服务器数据同步
- MySQL优化之——简单语法
- mysql日志详细解析
- 自己的MySQL入门学习
- mysql批量kill
- Mysql的命令行操作
- Mysql的命令行操作