IMPORT FOREIGN SCHEMA
IMPORT FOREIGN SCHEMA — импортировать определения таблиц со стороннего сервера
Синтаксис
IMPORT FOREIGN SCHEMAудалённая_схема
[ { LIMIT TO | EXCEPT } (имя_таблицы
[, ...] ) ] FROM SERVERимя_сервера
INTOлокальная_схема
[ OPTIONS (параметр
'значение
' [, ... ] ) ]
Описание #
IMPORT FOREIGN SCHEMA
создаёт сторонние таблицы, которые представляют таблицы, существующие на стороннем сервере. Новые сторонние таблицы будут принадлежать пользователю, выполняющему команду, и будут содержать корректные определения столбцов и параметры, соответствующие удалённым таблицам.
По умолчанию импортируются все таблицы и представления, существующие в определённой схеме на стороннем сервере. По желанию список таблиц можно ограничить некоторым подмножеством, или исключить из него конкретные таблицы. Новые сторонние таблицы создаются в целевой схеме, которая должна уже существовать.
Чтобы использовать IMPORT FOREIGN SCHEMA
, необходимо иметь право USAGE
для стороннего сервера, а также право CREATE
в целевой схеме.
Параметры
удалённая_схема
Удалённая схема, из которой будут импортированы объекты. Что именно представляет собой удалённая схема, зависит от применяемой обёртки сторонних данных.
LIMIT TO (
имя_таблицы
[, ...] )Импортировать только сторонние таблицы с заданными именами. Другие таблицы, существующие в сторонней схеме, будут проигнорированы.
EXCEPT (
имя_таблицы
[, ...] )Исключить из импорта указанные сторонние таблицы. Данная команда импортирует все таблицы, существующие в сторонней схеме, за исключением перечисленных в этом предложении.
имя_сервера
Сторонний сервер, с которого импортируется схема.
локальная_схема
Схема, в которой будут созданы импортируемые сторонние таблицы.
OPTIONS (
параметр
'значение
' [, ...] )Параметры, которые должны применяться при импорте. Допустимые имена параметров и их значения зависят от обёртки сторонних данных.
Примеры #
Импорт определений таблиц из удалённой схемы 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
, являющегося расширением Postgres Pro.