IMPORT FOREIGN SCHEMA

Импортирует определения таблиц из внешнего сервера.

Синтаксис

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 на целевую схему.

Поддержка импорта внешних схем зависит от конкретного внешнего обработчика данных (foreign-data wrapper).

Параметры

  • remote_schema
    • Удалённая схема, из которой будет выполнен импорт. Конкретное значение термина «удалённая схема» зависит от используемого внешнего обработчика данных.
  • LIMIT TO ( table_name [, ...] )
    • Импортировать только внешние таблицы, имена которых совпадают с указанными. Остальные таблицы, существующие во внешней схеме, будут проигнорированы.
  • EXCEPT ( table_name [, ...] )
    • Исключить указанные внешние таблицы из импорта. Будут импортированы все таблицы, существующие во внешней схеме, кроме перечисленных здесь.
  • server_name
    • Имя внешнего сервера, с которого необходимо импортировать определения таблиц.
  • local_schema
    • Схема, в которой Database создаст импортированные внешние таблицы.
  • OPTIONS ( option 'value' [, ... ] )
    • Параметры, которые будут использоваться при импорте. Допустимые имена и значения параметров зависят от конкретного внешнего обработчика данных.

      Примеры

      Импорт определений таблиц из удалённой схемы foreign_films на сервере film_server с созданием внешних таблиц в локальной схеме films:

      IMPORT FOREIGN SCHEMA foreign_films
      FROM SERVER film_server INTO films;

      То же самое, но импортируются только две таблицы — actors и directors (если они существуют):

      IMPORT FOREIGN SCHEMA foreign_films LIMIT TO (actors, directors)
      FROM SERVER film_server INTO films;

      Совместимость

      Команда IMPORT FOREIGN SCHEMA соответствует стандарту SQL, за исключением расширения OPTIONS, являющегося специфичным для Database.

Смотрите также

CREATE FOREIGN TABLE, CREATE SERVER