ALTER FOREIGN DATA WRAPPER
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 WRAPPERnameOWNER TOnew_ownerALTER FOREIGN DATA WRAPPERnameRENAME TOnew_name
描述
ALTER FOREIGN DATA WRAPPER更改外部数据包装器的定义。该命令的第一种形式更改外部数据包装器的支持函数或通用选项(至少需要一个子句)。第二种形式更改外部数据包装器的拥有者。
只有超级用户可以更改外部数据包装器。此外,只有超级用户才能成为外部数据包装器的拥有者。
参数
name一个现有外部数据包装器的名称。
HANDLERhandler_function为外部数据包装器指定一个新的处理器函数。
NO HANDLER用于指定该外部数据包装器不再具有一个处理器函数。
注意,使用没有处理器函数的外部数据包装器的外部表将无法访问。
VALIDATORvalidator_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子句属于扩展。