受支持版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发版本: devel

ALTER FOREIGN DATA WRAPPER

ALTER FOREIGN DATA WRAPPER — 更改外部数据包装器的定义

Synopsis

ALTER FOREIGN DATA WRAPPER name
    [ HANDLER handler_function | NO HANDLER ]
    [ VALIDATOR validator_function | NO VALIDATOR ]
    [ OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ]) ]
ALTER FOREIGN DATA WRAPPER name OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
ALTER FOREIGN DATA WRAPPER name RENAME TO new_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'] [, ... ] ) #

更改外部数据包装器的选项。ADDSETDROP指定要执行的动作。如果未显式指定操作, 则假定为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),但HANDLERVALIDATOROWNER TORENAME子句属于扩展。

提交更正

如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。