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;
當你執(zhí)行 RENAME 時,你不能有任何鎖定的表或活動的事務。你同樣也必須有對原初表的 ALTER 和 DROP 權限,以及對新表的 CREATE 和 INSERT 權限。
如果在多表更名中,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)
總結
到此這篇關于Mysql如何同時交換兩個表的表名的文章就介紹到這了,更多相關Mysql同時交換兩個表名內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
詳解MySQL中存儲函數創(chuàng)建與觸發(fā)器設置
這篇文章主要為大家詳細介紹了MySQL中存儲函數的創(chuàng)建與觸發(fā)器的設置,文中的示例代碼講解詳細,具有一定的學習價值,需要的可以參考一下2022-08-08
利用Mysql定時+存儲過程創(chuàng)建臨時表統計數據的過程
這篇文章主要介紹了利用Mysql定時+存儲過程創(chuàng)建臨時表統計數據,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03
mysql 登錄報錯:ERROR 1045 (28000):Access den
本文主要介紹了mysql 登錄報錯:ERROR 1045 (28000):Access denied for user ‘root‘@‘localhost‘ (using password: Yes)的問題解決,具有一定的參考價值,感興趣的可以了解一下2025-03-03
MySQL中的GROUP_CONCAT()函數詳解與實戰(zhàn)應用小結(示例詳解)
本文介紹了MySQL中的GROUP_CONCAT()函數,詳細解釋了其基本語法、應用示例以及ORDERBY和SEPARATOR參數的使用方法,此外,還提到了該函數的性能限制和注意事項,感興趣的朋友一起看看吧2025-02-02

