我正在使用MySQL。举个例子,我想将表A重命名为B,那么下面的语句有什么区别:
alter table A rename to B;
和这个:
rename table A to B;
谁能详细比较一下它们之间的情况吗?是否会根据不同的发动机而有所不同?
正如下面记录的ALTER TABLE Syntax http://dev.mysql.com/doc/en/alter-table.html:
For ALTER TABLE tbl_name RENAME TO new_tbl_name
没有任何其他选项,MySQL 只是重命名与该表对应的任何文件tbl_name
无需复印。 (您也可以使用RENAME TABLE http://dev.mysql.com/doc/en/rename-table.html重命名表的语句。看第 13.1.32 节,“RENAME TABLE Syntax” http://dev.mysql.com/doc/en/rename-table.html.) 专门为重命名的表授予的任何权限都不会迁移到新名称。必须手动更改它们。
正如下面记录的RENAME TABLE Syntax http://dev.mysql.com/doc/en/rename-table.html:
RENAME TABLE
,不像ALTER TABLE https://dev.mysql.com/doc/en/alter-table.html,可以在单个语句中重命名多个表:
RENAME TABLE old_table1 TO new_table1,
old_table2 TO new_table2,
old_table3 TO new_table3;
[ deletia ]
RENAME TABLE
不适合TEMPORARY
表。但是,您可以使用ALTER TABLE http://dev.mysql.com/doc/en/alter-table.html重命名临时表。
RENAME TABLE
适用于视图,但视图不能重命名到不同的数据库中。
没有其他差异。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)