Skip to content

ALTER FOREIGN DATA WRAPPER

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

语法

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子句是扩展。

另请参见

CREATE FOREIGN DATA WRAPPERDROP FOREIGN DATA WRAPPER