一个BLOB FILTER过滤器一个数据库对象,它实际上是一种特殊的外部函数类型,使用过滤器的唯一目的是BLOB对象以一种格式且将其转换为 BLOB 对象的另一种格式。BLOB 的对象格式被规定使用用户定义的 BLOB 子类型。
转换BLOB类型的外部函数存放在动态库中并在必要时加载。
关于BLOB更详细的信息,参阅Binary Data Types
作用: 声明一个 BLOB 过滤器到数据库
用于: DSQL, ESQL
语法:
表 5.30. DECLARE FILTER 语句参数
DECLARE FILTER 语句使 BLOB过滤器可用于数据库。BLOB 过滤器的名称中必须是唯一的 BLOB 过滤器的名称。
子类型可以用数字或助记符名称来的指定.自定义子类型必须(从-1 到-32768) 用负数表示。试图声明多个 BLOB
输入和输出类型相同的组合的过滤器将失败并产生错误。
INPUT_TYPE:子句定义要转换的对象的 BLOB 子类型.
OUTPUT_TYPE: 子句定义要创建的对象的 BLOB 子类型.
ENTRY_POINT:子句定义所在模块入口点的名称(导入的函数的名称).
MODULE_NAME: 子句定义导出的功能的名称模块所在,通常模块默认必须位于服务端的根目录下的UDF子目录下。在 firebird.conf 中的UDFAccess 参数允许编辑过滤器库文件的访问限制。
* * * * * * * * * * * * * * * * * * * * *
任可连接到数据库的用户都可以声明一个BLOB过滤器.
例子:
1. 创建一个过滤器使用子类编号.
2. 创建一个过滤器使用助记符名称.
参阅: DROP FILTER