'alter table rename' 和 'rename table' 有什么区别?
·
问题:'alter table rename' 和 'rename table' 有什么区别?
我正在使用 MySQL。这是一个示例,我想将表 A 重命名为 B,那么以下语句有什么区别:
alter table A rename to B;
和这个:
rename table A to B;
谁能给他们详细的比较一下?是否因不同的引擎而异?
解答
如ALTER TABLE语法中所述:
对于
ALTER TABLE _tbl_name_ RENAME TO _new_tbl_name_没有任何其他选项,MySQL 只是重命名与表tbl_name对应的任何文件而不制作副本。 (您也可以使用RENAME TABLE语句重命名表。参见第 13.1.32 节,“RENAME TABLE语法”。)任何专门为重命名表授予的权限都不会迁移到新名称。它们必须手动更改。
如RENAME TABLE语法中所述:
RENAME TABLE与ALTER TABLE不同,可以在单个语句中重命名多个表:
将表 old_table1 重命名为 new_table1,
old_table2 到 new_table2,
旧表 3 到新表 3;
[ **_deletia_** ]
RENAME TABLE不适用于TEMPORARY表。但是,您可以使用ALTER TABLE重命名临时表。
RENAME TABLE适用于视图,但视图不能重命名到不同的数据库中。
没有其他区别。
更多推荐



所有评论(0)