欢迎来到代码驿站!

Mysql

当前位置:首页 > 数据库 > Mysql

Mysql如何同时交换两个表的表名详解

时间:2022-06-28 09:17:22|栏目:Mysql|点击:

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

下一篇:为什么Mysql 数据库表中有索引还是查询慢

本文标题:Mysql如何同时交换两个表的表名详解

本文地址:http://www.codeinn.net/misctech/206148.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有