MariaDB-テーブルのクローン作成

状況によっては、既存のテーブルの正確なコピーを作成する必要があります。CREATE ... SELECTステートメントは、インデックスやデフォルト値などを無視するため、この出力を生成できません。

テーブルを複製する手順は次のとおりです。

  • SHOW CREATE TABLEを利用して、ソーステーブルの構造全体を詳細に示すCREATETABLEステートメントを生成します。

  • ステートメントを編集してテーブルに新しい名前を付け、実行します。

  • テーブルデータもコピーする必要がある場合は、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 TABLEASステートメントを使用します。このステートメントは、すべての列と列定義をコピーし、そのコピーにソーステーブルのデータを入力します。

以下に示す構文を確認してください-

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

以下の使用例を確認してください-

CREATE TABLE products_copy_tbl AS
   SELECT *
   FROM products_tbl;