PostgreSQL 9.4.4 中文手册
上一页 | 上一级 | 章 53. 写一个外部数据封装器 | 下一页

# 53.1. 外数据封装函数

FDW作者需要实现一个处理函数，并且任选一个验证函数。这两个函数必须写在一个编译语言里比如C， 使用版本-1接口。关于在C语言中调用约定和动态加载的详细细节，参阅第 35.9 节。

处理函数只返回调用函数的函数指针结构，其中通过规划器，执行器，以及各种维护命令 调用回调函数。写FDW的努力在于实现这些回调函数。 使用无参的PostgreSQL注册处理函数， 并且返回特殊伪类型`fdw_handler`。 回调函数是普通C函数，是不可见的或者在SQL级别上可随时调用的。 在第 53.2 节中描述回调函数。

验证函数负责验证 由`CREATE`和`ALTER`命令为外数据封装，以及外服务器，用户映射和使用封装的外表 给定的选项，验证函数必须作为两个参数来注册，验证包含该选项的文本数组，并且该选项与表示对象类型的OID相关联（ 在系统目录OID形式下该对象被存储在，要么`ForeignDataWrapperRelationId`, `ForeignServerRelationId`, `UserMappingRelationId`, 或者`ForeignTableRelationId`中）。 如果不提供验证函数，则在对象创建时间或者对象变更时间不检查该选项。

上一页 | 起始页 | 下一页
写一个外部数据封装器 | 上一级 | 外数据封装回调程序