2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1

58.1. 外部資料包裝器函式 #

FDW 作者需要實現一個處理函式,以及可選的驗證函式。這兩個函式都必須使用 C 語言等編譯型語言編寫,使用 version-1 介面。有關 C 語言呼叫約定和動態載入的詳細資訊,請參閱 第 36.10 節

處理函式只需返回一個函式指標結構,指向計劃器、執行器和各種維護命令將要呼叫的回撥函式。編寫 FDW 的大部分工作都在於實現這些回撥函式。處理函式必須使用 PostgreSQL 註冊,要求其不接受任何引數並返回特殊的偽型別 fdw_handler。回撥函式是普通的 C 函式,在 SQL 層面不可見或不可呼叫。回撥函式的描述在 第 58.2 節

驗證函式負責驗證 CREATEALTER 命令中為外部資料包裝器、外部伺服器、使用者對映和使用該包裝器的外部表提供的選項。驗證函式必須註冊為接受兩個引數:一個包含待驗證選項的文字陣列,以及一個代表選項關聯物件型別的 OID。後者對應於物件將儲存的系統目錄的 OID,以下之一:

  • AttributeRelationId

  • ForeignDataWrapperRelationId

  • ForeignServerRelationId

  • ForeignTableRelationId

  • UserMappingRelationId

如果沒有提供驗證函式,則在物件建立或修改時不會檢查選項。

提交更正

如果您在文件中發現任何不正確之處、與您實際體驗不符或需要進一步闡明的地方,請使用 此表單 報告文件問題。