×
Мы обрабатываем cookies, чтобы сделать наш сайт удобнее и персонализированнее для вас. Подробнее: политика использования «cookies» и «политики конфиденциальности».

Для самостоятельной настройки ознакомьтесь с инструкцией

Дополнительные настройки cookies в браузерах

Файлы cookie автоматически загружаются в ваш браузер при посещении веб-сайта. У вас есть возможность управлять этими файлами. Если Вы не согласны с использованием файлов cookies, запретите их сохранение на своём устройстве, удалите уже имеющиеся файлы cookies через настройки браузера или прекратите использование сайта.

При отключении обработки cookie наш сайт продолжит функционировать, однако будут использоваться исключительно необходимые технические файлы, без которых работа ресурса невозможна.

Инструкция по отключению cookies
Принять
Настроить
Отклонить

ДОКУМЕНТАЦИЯ

Выберите версию, форк и язык для СУБД Digital Q.DataBase, чтобы прочитать или скачать всю документацию.
Техподдержка
Документация
Диасофт
Авторские права © 2016–2025 ООО "Диасофт Экосистема"
Скачать всю документацию:

6.1.63. CREATE FOREIGN DATA WRAPPER

6.1.63. CREATE FOREIGN DATA WRAPPER

CREATE FOREIGN DATA WRAPPER — создание нового обёрточного модуля сторонних данных

Синтаксис

CREATE FOREIGN DATA WRAPPER name
    [ HANDLER handler_function | NO HANDLER ]
    [ VALIDATOR validator_function | NO VALIDATOR ]
    [ OPTIONS ( option 'value' [, ... ] ) ]

Описание

Команда CREATE FOREIGN DATA WRAPPER создаёт новый обёрточный модуль сторонних данных (foreign-data wrapper). Пользователь, определяющий обёрточный модуль сторонних данных, становится его владельцем.

Имя обёрточного модуля сторонних данных должно быть уникальным в пределах базы данных.

Только суперпользователи могут создавать обёрточные модули сторонних данных.

Параметры

name

Имя создаваемого обёрточного модуля сторонних данных.

HANDLER handler_function

handler_function — это имя ранее зарегистрированной функции, которая будет вызываться для получения функций выполнения для сторонних таблиц. Функция-обработчик не должна принимать аргументов, а её возвращаемый тип должен быть fdw_handler.

Можно создать обёрточный модуль сторонних данных без функции-обработчика, но сторонние таблицы, использующие такой модуль, можно только объявить, но не получить к ним доступ.

VALIDATOR validator_function

validator_function — это имя ранее зарегистрированной функции, которая будет вызываться для проверки общих параметров, заданных для обёрточного модуля сторонних данных, а также параметров для сторонних серверов, пользовательских сопоставлений и сторонних таблиц, использующих этот модуль. Если функция-валидатор не указана или указано NO VALIDATOR, то параметры не будут проверяться во время создания. (Обёрточные модули сторонних данных могут игнорировать или отклонять неверные параметры во время выполнения, в зависимости от реализации.) Функция-валидатор должна принимать два аргумента: один типа text[], который будет содержать массив параметров, хранящихся в системных каталогах, и один типа oid, который будет OID системного каталога, содержащего параметры. Возвращаемый тип игнорируется; функция должна сообщать о неверных параметрах, используя функцию ereport(ERROR).

OPTIONS ( option 'value' [, ... ] )

Это предложение задаёт параметры для нового обёрточного модуля сторонних данных. Допустимые имена и значения параметров специфичны для каждого модуля сторонних данных и проверяются с использованием его функции-валидатора. Имена параметров должны быть уникальными.

Примечания

Функциональность работы со сторонними данными в Digital Q.DataBase всё ещё находится в активной разработке. Оптимизация запросов примитивна (и в основном также возложена на обёрточный модуль). Таким образом, остаётся значительный простор для улучшения производительности в будущем.

Примеры

Создать бесполезный обёрточный модуль сторонних данных dummy:

CREATE FOREIGN DATA WRAPPER dummy;

Создать обёрточный модуль сторонних данных file с функцией-обработчиком file_fdw_handler:

CREATE FOREIGN DATA WRAPPER file HANDLER file_fdw_handler;

Создать обёрточный модуль сторонних данных mywrapper с некоторыми параметрами:

CREATE FOREIGN DATA WRAPPER mywrapper
    OPTIONS (debug 'true');

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

Команда CREATE FOREIGN DATA WRAPPER соответствует стандарту ISO/IEC 9075-9 (SQL/MED), за исключением того, что предложения HANDLER и VALIDATOR являются расширениями, а стандартные предложения LIBRARY и LANGUAGE не реализованы в Digital Q.DataBase.

Однако обратите внимание, что функциональность SQL/MED в целом ещё не соответствует стандарту.

Наверх
свяжитесь
с нами
контакты
Для прямой связи с нами вы можете использовать контакты ниже, либо оставить заявку через форму обратной связи, и мы обязательно свяжемся с вами

*поля обязательные к заполнению