FDW 作者需要實現一個處理函式,以及可選的驗證函式。這兩個函式都必須使用 C 語言等編譯型語言編寫,使用 version-1 介面。有關 C 語言呼叫約定和動態載入的詳細資訊,請參閱 第 36.10 節。
處理函式只需返回一個函式指標結構,指向計劃器、執行器和各種維護命令將要呼叫的回撥函式。編寫 FDW 的大部分工作都在於實現這些回撥函式。處理函式必須使用 PostgreSQL 註冊,要求其不接受任何引數並返回特殊的偽型別 fdw_handler
。回撥函式是普通的 C 函式,在 SQL 層面不可見或不可呼叫。回撥函式的描述在 第 58.2 節。
驗證函式負責驗證 CREATE
和 ALTER
命令中為外部資料包裝器、外部伺服器、使用者對映和使用該包裝器的外部表提供的選項。驗證函式必須註冊為接受兩個引數:一個包含待驗證選項的文字陣列,以及一個代表選項關聯物件型別的 OID。後者對應於物件將儲存的系統目錄的 OID,以下之一:
AttributeRelationId
ForeignDataWrapperRelationId
ForeignServerRelationId
ForeignTableRelationId
UserMappingRelationId
如果沒有提供驗證函式,則在物件建立或修改時不會檢查選項。
如果您在文件中發現任何不正確之處、與您實際體驗不符或需要進一步闡明的地方,請使用 此表單 報告文件問題。