W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
dblink_build_sql_insert — 使用一個(gè)本地元組構(gòu)建一個(gè) INSERT 語(yǔ)句,將主鍵域值替換為提供的值
dblink_build_sql_insert(text relname,
int2vector primary_key_attnums,
integer num_primary_key_atts,
text[] src_pk_att_vals_array,
text[] tgt_pk_att_vals_array) 返回 text
dblink_build_sql_insert
在選擇性地將一個(gè)本地表復(fù)制到一個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù)時(shí)很有用。它基于主鍵從本地表選擇一行,并且接著構(gòu)建一個(gè)復(fù)制該行的INSERT
命令,但是其中主鍵值被替換為最后一個(gè)參數(shù)中的值(要?jiǎng)?chuàng)建該行的一個(gè)準(zhǔn)確拷貝,只要為最后兩個(gè)參數(shù)指定相同的值)。
relname
一個(gè)本地關(guān)系的名稱,例如foo
或者myschema.mytab
。如果該名稱是大小寫混合的或包含特殊字符,要包括雙引號(hào),例如"FooBar"
;如果沒(méi)有引號(hào),字符串將被折疊到小寫形式。
primary_key_attnums
主鍵域的屬性號(hào)(從 1 開(kāi)始),例如1 2
。
num_primary_key_atts
主鍵域的數(shù)量。
src_pk_att_vals_array
要被用來(lái)查找本地元組的主鍵域值。每一個(gè)域都被表示為文本形式。如果沒(méi)有行具有這些主鍵值,則拋出一個(gè)錯(cuò)誤。
tgt_pk_att_vals_array
要被替換到結(jié)果INSERT
命令中的主鍵域值。每一個(gè)域被表示為文本形式。
將要求的 SQL 語(yǔ)句返回為文本。
自PostgreSQL 9.0 開(kāi)始,primary_key_attnums
中的屬性號(hào)被解釋為邏輯列號(hào),對(duì)應(yīng)于列在SELECT * FROM relname
中的位置。之前的版本將屬性號(hào)解釋為物理列位置。如果指示出的列的左邊有任意列在該表的生存期內(nèi)被刪除,這兩種解釋就有區(qū)別。
SELECT dblink_build_sql_insert('foo', '1 2', 2, '{"1", "a"}', '{"1", "b''a"}');
dblink_build_sql_insert
--------------------------------------------------
INSERT INTO foo(f1,f2,f3) VALUES('1','b''a','1')
(1 row)
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: