Webサイトの運営会社で得た技術的な知識を記録していきます。 サーバー情報、Webデザイン、プログラミング、このWebサイトで利用させていただいているBlogger(ブロガー)についても公開していきます。

Oracleのテーブルをコピーして別名のテーブルを作成する方法

Oracleで既存のテーブルをコピーするには、「CREATE TABLE ~ AS SELECT ~」を使用します。

コピー元のテーブルからSELECTしたデータを、CREATE TABLEで作成したターブルに挿入するようです。 テーブルをバックアップする時などに便利ですよね。

構造だけをコピーする

既存のテーブルから構造だけをコピーする方法です。

--既存テーブルから構造をコピーするSQL
CREATE TABLE <コピー先テーブル名> NOLOGGING PARALLEL AS SELECT * FROM <コピー元テーブル名> WHERE 1<>1;

実行例1. "table1" の構造を "table2" にコピーする

-- テーブル "table1" の構造を "table2" にコピーするSQL
CREATE TABLE table2 NOLOGGING PARALLEL AS SELECT * FROM table1 WHERE 1<>1;

構造とデータをコピーする

既存のテーブルから構造とデータをコピーして別名のテーブルを作成する方法です。

--既存テーブルからをコピーするSQL
CREATE TABLE <コピー先テーブル名> NOLOGGING PARALLEL AS SELECT * FROM <コピー元テーブル名>;

実行例1. "table1" の構造を "table2" にコピーする

-- テーブル "table1" の構造を "table2" にコピーするSQL
CREATE TABLE table2 NOLOGGING PARALLEL AS SELECT * FROM table1


既にあるテーブルをコピーして別名のテーブルを作成する方法でした。

 以上です。


0 件のコメント:

人気記事

ラベル

アーカイブ

ページ

このブログを検索