Postgres Professional
English
English
  • СУБД Postgres Pro
    • Postgres Pro Enterprise
    • Postgres Pro Certified (ФСТЭК)
    • Postgres Pro Standard
    • Для 1C:Предприятие
    • В облаке Azure
    • План разработок
    • Экосистема
  • Услуги
    • Миграция на PostgreSQL
    • Отказоустойчивые решения для PostgreSQL
    • Аудит СУБД
    • Техподдержка СУБД 24x7
    • Заказные разработки СУБД
  • Образование
    • Документация
    • Учебные курсы
    • Глоссарий
    • Демо-база
    • Книги
    • Списки рассылки
  • Блог
    • Новости
    • СМИ о нас
    • PostgreSQL
    • Компания
  • О компании
    • Наша команда
    • Карьера
    • Вакансии
    • Наши партнёры
    • Отзывы
    • Лицензии
  • Контакты
    • Для СМИ
  • Главная
  • Документация
  • Postgres Pro Standard 10
  • Страница в других версиях:
  • Postgres Pro Standard
  • 10
  • /
  • 9.6
  • /
  • 9.5
  •  ( текущая ) 
  •  | 
  • Postgres Pro Enterprise
  • 9.6
  •  | 
  • PostgreSQL
  • 10
  • /
  • 9.6
  • /
  • 9.5
  • /
  • 9.4


  • Русская версия
  • |
  • английская версия
  • |
  • сравнение
dblink_exec
Пред. НаверхF.12. dblinkНачало След.

dblink_exec

dblink_exec — выполняет команду в удалённой базе данных

Синтаксис

dblink_exec(text connname, text sql [, bool fail_on_error]) returns text
dblink_exec(text connstr, text sql [, bool fail_on_error]) returns text
dblink_exec(text sql [, bool fail_on_error]) returns text

Описание

Функция dblink_exec выполняет команду (то есть любой SQL-оператор, не возвращающий строки) в удалённой базе данных.

Когда этой функции передаются два аргумента типа text, первый сначала рассматривается как имя постоянного подключения; если такое подключение находится, команда выполняется для него. Если не находится, первый аргумент воспринимается как строка подключения, как для функции dblink_connect, и заданное подключение устанавливается только на время выполнения этой команды.

Аргументы

connname

Имя используемого подключения; опустите этот параметр, чтобы использовать безымянное подключение.

connstr

Строка подключения, описанная ранее для dblink_connect

sql

SQL-запрос, который вы хотите выполнить в удалённой базе данных, например insert into foo values(0,'a','{"a0","b0","c0"}').

fail_on_error

Если равен true (это значение по умолчанию), в случае ошибки, выданной на удалённой стороне соединения, ошибка также выдаётся локально. Если равен false, удалённая ошибка выдаётся локально как ЗАМЕЧАНИЕ, и возвращаемым значением функции будет ERROR.

Возвращаемое значение

Возвращает состояние (либо строку состояния команды, либо ERROR).

Примеры

SELECT dblink_connect('dbname=dblink_test_standby');
 dblink_connect
----------------
 OK
(1 row)

SELECT dblink_exec('insert into foo values(21,''z'',''{"a0","b0","c0"}'');');
   dblink_exec
-----------------
 INSERT 943366 1
(1 row)

SELECT dblink_connect('myconn', 'dbname=regression');
 dblink_connect
----------------
 OK
(1 row)

SELECT dblink_exec('myconn', 'insert into foo values(21,''z'',''{"a0","b0","c0"}'');');
   dblink_exec
------------------
 INSERT 6432584 1
(1 row)

SELECT dblink_exec('myconn', 'insert into pg_class values (''foo'')',false);
NOTICE:  sql error
DETAIL:  ERROR:  null value in column "relnamespace" violates not-null constraint

 dblink_exec
-------------
 ERROR
(1 row)

Пред. Наверх След.
dblink Начало dblink_open
  • Postgres Pro
  • Документация
  • Списки рассылки

© Postgres Professional, 2015-2018

[email protected]

Ваше сообщение принято под номером .