MariaDB - Clonazione di tabelle

Alcune situazioni richiedono la produzione di una copia esatta di una tabella esistente. L'istruzione CREATE ... SELECT non può produrre questo output perché trascura cose come indici e valori predefiniti.

La procedura per la duplicazione di una tabella è la seguente:

  • Utilizzare SHOW CREATE TABLE per produrre un'istruzione CREATE TABLE che dettaglia l'intera struttura della tabella di origine.

  • Modificare l'istruzione per dare alla tabella un nuovo nome ed eseguirla.

  • Utilizzare un'istruzione INSERT INTO ... SELECT se è necessario copiare anche i dati della tabella.

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;

Un altro metodo per creare un duplicato utilizza un'istruzione CREATE TABLE AS. L'istruzione copia tutte le colonne, le definizioni di colonna e popola la copia con i dati della tabella di origine.

Rivedi la sua sintassi fornita di seguito -

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

Rivedi un esempio del suo utilizzo di seguito:

CREATE TABLE products_copy_tbl AS
   SELECT *
   FROM products_tbl;