MariaDB - Clonage de table

Certaines situations nécessitent de produire une copie exacte d'une table existante. L'instruction CREATE ... SELECT ne peut pas produire cette sortie car elle néglige des éléments tels que les index et les valeurs par défaut.

La procédure de duplication d'une table est la suivante -

  • Utilisez SHOW CREATE TABLE pour produire une instruction CREATE TABLE qui détaille la structure entière de la table source.

  • Modifiez l'instruction pour donner un nouveau nom à la table et exécutez-la.

  • Utilisez une instruction INSERT INTO ... SELECT si vous avez également besoin de copier les données de la table.

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;

Une autre méthode pour créer un doublon utilise une instruction CREATE TABLE AS. L'instruction copie toutes les colonnes, les définitions de colonne et remplit la copie avec les données de la table source.

Revoyez sa syntaxe donnée ci-dessous -

CREATE TABLE clone_tbl AS
   SELECT columns
   FROM original_tbl
   WHERE conditions];

Examinez un exemple de son utilisation ci-dessous -

CREATE TABLE products_copy_tbl AS
   SELECT *
   FROM products_tbl;