IMPORT FOREIGN SCHEMA remote_schema [ { LIMIT TO | EXCEPT } ( table_name [, ...] ) ] FROM SERVER server_name INTO local_schema [ OPTIONS ( option 'value' [, ... ] ) ]
IMPORT FOREIGN SCHEMAは外部サーバ上に存在するテーブルを表す外部テーブルを作成します。 新しい外部テーブルは、コマンドを実行するユーザに所有され、リモートのテーブルにマッチする正しい列定義とオプションで作成されます。
デフォルトでは、外部サーバ上の特定のスキーマ内に存在するすべてのテーブルとビューがインポートされます。 オプションで、インポートするテーブルを指定した部分集合に制限したり、特定のテーブルを除外することができます。 新しい外部テーブルは、すべてターゲットとなるスキーマ内に作成され、そのスキーマは既存である必要があります。
IMPORT FOREIGN SCHEMAを使用するには、外部サーバのUSAGE権限、およびターゲットとなるスキーマのCREATE権限が必要です。
インポート元となるリモートのスキーマです。 リモートのスキーマの具体的な意味は、使用する外部データラッパに依存します。
指定したテーブル名の1つにマッチする外部テーブルだけをインポートします。 外部スキーマ内に存在する他のテーブルは無視されます。
指定した外部テーブルをインポートから除外します。 ここに列挙したものを除き、外部スキーマ内に存在するすべてのテーブルがインポートされます。
インポート元となる外部サーバです。
インポートされた外部テーブルが作成されるスキーマです。
インポート時に使用されるオプションです。 使用できるオプションの名前と値は、各外部データラッパに依存します。
サーバfilm_server上のリモートのスキーマforeign_filmsからテーブルの定義をインポートし、ローカルのスキーマfilms内に外部テーブルを作成します。
IMPORT FOREIGN SCHEMA foreign_films FROM SERVER film_server INTO films;
上と同様ですが、2つのテーブルactorsとdirectorsだけを(それらが存在するなら)インポートします。
IMPORT FOREIGN SCHEMA foreign_films LIMIT TO (actors, directors) FROM SERVER film_server INTO films;