Mysql如何同时交换两个表的表名详解
程序员文章站
2022-06-09 23:50:17
mysql同时交换两个表的表名表重命名有两种方式,所以交换两表名也有两种方式:1 .lock tables t1 write ,t2 write;alter table t1 rename to t3...
mysql同时交换两个表的表名
表重命名有两种方式,所以交换两表名也有两种方式:
1 .
lock tables t1 write ,t2 write; alter table t1 rename to t3; alter table t2 rename to t1; alter table t3 rename to t2; unlock tables;
2 .
rename table t1 to t3,t2 to t1,t2 to t3;
mysql命令rename:修改表名
rename命令用于修改表名。
rename命令格式:rename table 原表名 to 新表名;
例如,在表myclass名字更改为youclass:
mysql> rename table myclass to youclass;
当你执行 rename 时,你不能有任何锁定的表或活动的事务。你同样也必须有对原初表的 alter 和 drop 权限,以及对新表的 create 和 insert 权限。
如果在多表更名中,mysql 遭遇到任何错误,它将对所有被更名的表进行倒退更名,将每件事物退回到最初状态。
rename table 在 mysql 3.23.23 中被加入。
重命名表方法
使用 rename table 语句或 alter table 语句都可以对表进行重命名,基本语法如下:
# rename table 语法: rename table tbl_name to new_tbl_name [, tbl_name2 to new_tbl_name2] ... # alter table 语法: alter table old_table rename new_table; # 具体示例: mysql> show tables; +------------------+ | tables_in_testdb | +------------------+ | tb1 | | tb2 | +------------------+ 2 rows in set (0.00 sec) mysql> rename table tb1 to new_tb1; query ok, 0 rows affected (0.03 sec) mysql> alter table tb2 rename new_tb2; query ok, 0 rows affected (0.04 sec) mysql> show tables; +------------------+ | tables_in_testdb | +------------------+ | new_tb1 | | new_tb2 | +------------------+ 2 rows in set (0.00 sec)
总结
到此这篇关于mysql如何同时交换两个表的表名的文章就介绍到这了,更多相关mysql同时交换两个表名内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
下一篇: 一篇文章带你了解C语言函数递归
推荐阅读
-
mysql如何比对两个数据库表结构的方法
-
图文详解MySQL中两表关联的连接表如何创建索引
-
Mysql如何同时交换两个表的表名详解
-
数据库 mysql-如何查询两个表的字段有相同部分但不完全相同的?
-
mysql - php如何将两个表的内容处理并整合到第三个表里
-
数据库 mysql-如何查询两个表的字段有相同部分但不完全相同的?
-
mysql使用federated引擎实现远程访问数据库(跨网络同时操作两个数据库中的表)_MySQL
-
mysql - php如何将两个表的内容处理并整合到第三个表里
-
mysql使用federated引擎实现远程访问数据库(跨网络同时操作两个数据库中的表)_MySQL
-
如何将MySQL的两个表名对调_MySQL