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(省略時預設為 true),則遠端連線端發生的錯誤也會導致本地引發錯誤。如果為 false,則遠端錯誤將作為 NOTICE 本地報告,並且函式的返回值設定為 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)
如果您在文件中看到任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用 此表格 報告文件問題。