В чем разница между "переименованием таблицы" и "переименованием таблицы"?
Я использую MySQL. Вот пример, я хочу переименовать таблицу A в B, в чем разница между следующим утверждением:
alter table A rename to B;
и этот:
rename table A to B;
Кто-нибудь может дать подробное сравнение между ними? Это зависит от другого двигателя?
1 ответ
Как указано в 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
, можно переименовать несколько таблиц в одном выражении:RENAME TABLE old_table1 TO new_table1, old_table2 TO new_table2, old_table3 TO new_table3;
[ deletia ]
RENAME TABLE
не работает дляTEMPORARY
столы. Тем не менее, вы можете использоватьALTER TABLE
переименовать временные таблицы.
RENAME TABLE
работает для представлений, за исключением того, что представления не могут быть переименованы в другую базу данных.
Других отличий нет.