W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
多個助手函數(shù)被從核心服務(wù)器輸出,這樣外部數(shù)據(jù)包裝器的作者們可以很容易訪問到FDW相關(guān)對象的屬性,例如FDW選項。要使用任何其中一個函數(shù),你需要在你的源文件中包括頭文件foreign/foreign.h
。這個頭也定義了被這些函數(shù)返回的結(jié)構(gòu)類型。
ForeignDataWrapper *
GetForeignDataWrapperExtended(Oid fdwid, bits16 flags);
此功能返回具有給定 OID 的外數(shù)據(jù)包裝器的ForeignDataWrapper
對象。 ForeignDataWrapper
對象包含 FDW 的屬性(詳細信息請參閱foreign/foreign.h
)。 flags
是一個 bitwise-or'd位掩碼,指示一組外加的選項集。
它可以取值FDW_MISSING_OK
,在這種情況下NULL
結(jié)果將返回給調(diào)用方,而不是返回錯誤給未定義的對象。
ForeignDataWrapper *
GetForeignDataWrapper(Oid fdwid);
這個函數(shù)為具有給定 OID 的外部數(shù)據(jù)包裝器返回一個ForeignDataWrapper
對象。一個ForeignDataWrapper
對象包含該FDW的特性(詳見foreign/foreign.h
)。
ForeignServer *
GetForeignServerExtended(Oid serverid, bits16 flags);
此功能返回具有給定 OID 的外數(shù)據(jù)包裝器的ForeignServer
對象。 ForeignServer
對象包含 FDW 的屬性(詳細信息請參閱foreign/foreign.h
)。 flags
是一個 bitwise-or'd位掩碼,指示一組外加的選項集。
它可以取值FDW_MISSING_OK
,在這種情況下NULL
結(jié)果將返回給調(diào)用方,而不是返回錯誤給未定義的對象。
ForeignServer *
GetForeignServer(Oid serverid);
這個函數(shù)為一個具有給定 OID 的外部服務(wù)器返回ForeignServer
對象。一個ForeignServer
對象包含該服務(wù)器的特性(詳見foreign/foreign.h
)。
UserMapping *
GetUserMapping(Oid userid, Oid serverid);
這個函數(shù)為在給定服務(wù)器上的給定角色的用戶映射返回UserMapping
對象(如果指定用戶沒有映射,它將返回PUBLIC
的映射,如果也沒有則拋出錯誤)。一個UserMapping
對象包含該用戶映射的特性(詳見foreign/foreign.h
)。
ForeignTable *
GetForeignTable(Oid relid);
該函數(shù)為一個具有給定 OID 的外部表返回ForeignTable
對象。一個ForeignTable
對象包含該外部表的特性(詳見foreign/foreign.h
)。
List *
GetForeignColumnOptions(Oid relid, AttrNumber attnum);
這個函數(shù)為一個具有給定外部表 OID 和屬性號的列返回針對每一列的FDW選項,形式為一個DefElem
列表。如果該列沒有選項則返回 NIL。
某些對象類型除了基于OID的查找函數(shù)之外,還具有基于名稱的查找函數(shù):
ForeignDataWrapper *
GetForeignDataWrapperByName(const char *name, bool missing_ok);
這個函數(shù)為一個具有給定名稱的外部數(shù)據(jù)包裝器返回ForeignDataWrapper
對象。如果包裝器沒有找到,在missing_ok為真時返回 NULL,否則拋出一個錯誤。
ForeignServer *
GetForeignServerByName(const char *name, bool missing_ok);
這個函數(shù)為一個具有給定名稱的外部服務(wù)器返回ForeignServer
對象。如果該服務(wù)器沒有被找到,在missing_ok為真時返回 NULL,否則拋出一個錯誤。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: