mysql 命令重命名錶RENAME TABLE 句法

mysql 命令重命名錶RENAME TABLE 句法mysql

RENAME TABLE tbl_name TO new_tbl_name[, tbl_name2 TO 
new_tbl_name2,...]
改名是以原子方式(atomically)執行,這就意味着,當改名正在運行時,其它的任何線程均不能該表。這使得以一個空表替換一個表成爲可能。sql

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;
只要兩個數據庫在同一個磁盤上,你也能夠從一個數據庫改名到另外一個數據庫:atom

RENAME TABLE current_db.tbl_name TO other_db.tbl_name;
當你執行 RENAME 時,你不能有任何鎖定的表或活動的事務。你一樣也必須有對原初表的 ALTER 和 DROP 權限,以及對新表的 CREATE 和 INSERT 權限。線程

若是在多表改名中,MySQL 遭遇到任何錯誤,它將對全部被改名的表進行倒退改名,將每件事物退回到最初狀態。事務

RENAME TABLE 在 MySQL 3.23.23 中被加入。table

相關文章
相關標籤/搜索