В некоторых ситуациях требуется создание точной копии существующей таблицы. Оператор CREATE … SELECT не может создать этот вывод, потому что он игнорирует такие вещи, как индексы и значения по умолчанию.
Процедура дублирования таблицы следующая:
-
Используйте SHOW CREATE TABLE для создания оператора CREATE TABLE, который детализирует всю структуру исходной таблицы.
-
Измените оператор, чтобы дать таблице новое имя, и выполните его.
-
Используйте оператор INSERT INTO … SELECT, если вам также необходимо скопировать данные таблицы.
Используйте SHOW CREATE TABLE для создания оператора CREATE TABLE, который детализирует всю структуру исходной таблицы.
Измените оператор, чтобы дать таблице новое имя, и выполните его.
Используйте оператор INSERT INTO … SELECT, если вам также необходимо скопировать данные таблицы.
mysql> INSERT INTO inventory_copy_tbl ( product_id,product_name,product_manufacturer,ship_date) SELECT product_id,product_name,product_manufacturer,ship_date, FROM inventory_tbl;
Другой метод создания дубликата использует инструкцию CREATE TABLE AS. Оператор копирует все столбцы, определения столбцов и заполняет копию данными исходной таблицы.
Просмотрите его синтаксис, приведенный ниже —
CREATE TABLE clone_tbl AS SELECT columns FROM original_tbl WHERE conditions];
Рассмотрите пример его использования ниже —