[TOC] # RENAME TABLE ## 描述 该语句用来对一个或多个表进行重命名。 ## 格式 ~~~ RENAME TABLE tblname TO newtblname [, tb1name2 TO newtblname …]; ~~~ ## 参数解释 <table data-tag="table" id="table-plp-sd4-6pg" class="table"><colgroup width="287" span="1" data-tag="col" id="col-jd0-j05-p1y" colwidth="1*" colnum="1" colname="col1" style="width:50%" class="col"></colgroup><colgroup width="360" span="1" data-tag="col" id="col-pnv-lv2-e03" colwidth="1*" colnum="2" colname="col2" style="width:50%" class="col"></colgroup><thead id="thead-24u-x4m-7ld" class="thead"><tr id="tr-jov-697-ugz"><th id="td-w19-6de-r8i"><p id="p-ue6-7du-2hw"><b>参数</b></p></th><th id="td-e6l-8i3-lw1"><p id="p-3e3-ceb-koa"><b>描述</b></p></th></tr></thead><tbody data-tag="tbody" id="tbody-kas-g39-yw9" class="tbody"><tr data-tag="tr" id="tr-99a-r2y-m93" class="tr"><td data-tag="td" id="td-i9y-g0j-548" class="td"><p data-tag="p" id="p-rfm-zgp-3jh" class="p">tblname</p></td><td data-tag="td" id="td-jvz-y3d-sao" class="td"><p data-tag="p" id="p-898-62g-y9b" class="p">原表名。</p></td></tr><tr data-tag="tr" id="tr-16h-fy9-3lz" class="tr"><td data-tag="td" id="td-lex-33p-apw" class="td"><p data-tag="p" id="p-oai-1lo-z4i" class="p">newtblname</p></td><td data-tag="td" id="td-eb6-gcs-qxo" class="td"><p data-tag="p" id="p-9dp-7ep-ocv" class="p">新表名。</p></td></tr><tr data-tag="tr" id="tr-4v0-pmh-38w" class="tr"><td data-tag="td" id="td-8kx-h8s-a75" class="td"><p data-tag="p" id="p-3x9-o7n-g31" class="p">tblname TO newtblname </p><p data-tag="p" id="p-c7c-5xz-u7q" class="p"> [, tb1name2 TO newtblname …];</p></td><td data-tag="td" id="td-6pw-jx1-oxw" class="td"><p data-tag="p" id="p-aq1-s9m-mem" class="p">多个表重命名时,使用“,”隔开。</p></td></tr></tbody></table> ## 注意事项 * 重命名操作自动进行,重命名正在进行时,其他线程不能读取任何表。 * 如果此语句用于对多个表进行重命名,则重命名操作从左到右进行。 * 当您执行 RENAME 时,您不能有被锁定的表,也不能有处于活性状态的事务。还必须拥有原表的 ALTER 和 DROP 权限,以及新表的 CREATE 和 INSERT 权限。 * RENAME TABLE 也可以用于视图,只要确保是在同一个数据库中。 ## 示例 1. 创建表 t1 和 t2。 ~~~ create table t1(c1 int); create table t2(c1 int); ~~~ 2. 将表 t1 重命名为 t11。 ~~~ rename table t1 to t11; ~~~ 3. 将表 t11 重命名为 t111,表 t2 重命名为 t22。 ~~~ rename table t11 to t111, t2 to t22; ~~~ 4. 将表 t111 重命名为 t1111 后,再将表 t1111重命名为 t1。 ~~~ rename table t111 to t1111, t1111 to t1; ~~~