ALTER FOREIGN DATA WRAPPER — 更改一个外部数据包装器的定义
ALTER FOREIGN DATA WRAPPERname
[ HANDLERhandler_function
| NO HANDLER ] [ VALIDATORvalidator_function
| NO VALIDATOR ] [ OPTIONS ( [ ADD | SET | DROP ]option
['value
'] [, ... ]) ] ALTER FOREIGN DATA WRAPPERname
OWNER TO {new_owner
| CURRENT_USER | SESSION_USER } ALTER FOREIGN DATA WRAPPERname
RENAME TOnew_name
ALTER FOREIGN DATA WRAPPER
更改一个
外部数据包装器的定义。该命令的第一种形式用于更改外部数据包装器的
支持函数或者一般选项(至少要求一个子句)。第二种形式更改外部数据包
装器的拥有者。
只有超级用户能修改外部数据包装器。此外,只有超级用户能够拥有外部数 据包装器。
name
一个已有的外部数据包装器的名称。
HANDLER handler_function
为外部数据包装器指定一个新的处理器函数。
NO HANDLER
用于指定该外部数据包装器不再具有一个处理器函数。
注意使用没有处理器的外部数据包装器的外部表不能被访问。
VALIDATOR validator_function
为外部数据包装器指定一个新的验证器函数。
注意,新的验证器可能会认为该外部数据包装器或者依赖于它的独立服务器
的已有选项、用户映射、外部表无效。PostgreSQL
不会做这种检查。在使用修改过的外部数据包装器之前确认这些选项正确是
用户的责任。不过,在这个ALTER FOREIGN DATA
WRAPPER
命令中指定的选项将会被使用新的验证器检查。
NO VALIDATOR
用于指定该外部数据包装器不再拥有一个验证器函数。
OPTIONS ( [ ADD | SET | DROP ] option
['value
'] [, ... ] )
为该外部数据包装器更改选项。ADD
、SET
以及DROP
指定要被执行的动作。如果没有显式地指定操作,
将假定为ADD
。选项名称必须唯一,选项名称和值(如果有)
也会使用该外部数据包装器的验证器函数来验证。
new_owner
该外部数据包装器的新拥有者的用户名。
new_name
该外部数据包装器的新名称。
更改一个外部数据包装器dbi
,增加选项
foo
并删除bar
:
ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo '1', DROP 'bar');
把外部数据包装器dbi
的验证器改为
bob.myvalidator
:
ALTER FOREIGN DATA WRAPPER dbi VALIDATOR bob.myvalidator;
ALTER FOREIGN DATA WRAPPER
符合
ISO/IEC 9075-9 (SQL/MED)。不过HANDLER
、
VALIDATOR
、OWNER TO
以及RENAME
子句是扩展。