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;
當(dāng)你執(zhí)行 RENAME 時,你不能有任何鎖定的表或活動的事務(wù)。你同樣也必須有對原初表的 ALTER 和 DROP 權(quán)限,以及對新表的 CREATE 和 INSERT 權(quán)限。
如果在多表更名中,MySQL 遭遇到任何錯誤,它將對所有被更名的表進行倒退更名,將每件事物退回到最初狀態(tài)。
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)
總結(jié)
到此這篇關(guān)于Mysql如何同時交換兩個表的表名的文章就介紹到這了,更多相關(guān)Mysql同時交換兩個表名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
原來MySQL?數(shù)據(jù)類型也可以優(yōu)化
這篇文章主要介紹了原來MySQL?數(shù)據(jù)類型也可以優(yōu)化,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下,希望對你的學(xué)習(xí)有所幫助2022-08-08Mysql數(shù)據(jù)表中的蠕蟲復(fù)制使用方法
在本文中我們給大家分享了關(guān)于怎么使用Mysql數(shù)據(jù)表中的蠕蟲復(fù)制的相關(guān)知識點,有興趣的朋友們學(xué)習(xí)下。2019-02-02MySQL 5.5.49 大內(nèi)存優(yōu)化配置文件優(yōu)化詳解
最近mysql服務(wù)器升級到了MySQL 5.5.49版本,性能比mysql 5.0.**肯定效率高了不少,但mysql的默認(rèn)配置文件不合理,這里是針對大內(nèi)存訪問量大的機器的配置方案,需要的朋友可以參考下2016-05-05出現(xiàn)錯誤mysql Table ''performance_schema...解決辦法
這篇文章主要介紹了解決出現(xiàn)錯誤mysql Table 'performance_schema.session_variables' doesn't exist的相關(guān)資料,需要的朋友可以參考下2017-04-04