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
ALTER FOREIGN DATA WRAPPER name RENAME TO new_name

描述

ALTER FOREIGN DATA WRAPPER修改一个外部数据包装的定义。第一个语句修改外部数据包装的支持函数或者一个一般性的选项。Greenplum 数据库要求只要有一个选项。第二和第三的语句修改外部数据包装的所有者或者名字。

只有超级用户才可以修改外部数据包装。另外,只有超级用户才可以拥有外部数据包装。

参数

name

外部数据包装的名字。

HANDLER handler_function

为外部数据包装提供一个新的处理函数。

NO HANDLER

指定外部数据包装不再拥有处理函数。

Note: 你不能访问没有处理的外部数据包装的外部表。
VALIDATOR validator_function

为外部数据包装提供一个新的验证函数。

当你修改验证函数时,外部数据包装、服务器、用户映射 可能会变成不可用。在修改外部数据包装前你必须要确保这些选项时正确的。注意使用新验证者时,Greenplum数据库会检查在ALTER FOREIGN DATA WRAPPER 命令中用到的所有选项。

NO VALIDATOR

指定外部数据包装不再拥有验证函数。

OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )

修改外部数据包装的选项。ADD, SETDROP 指定了操作的动作。如果没有明确指出操作,默认的操作是ADD。选项的名字必须是唯一的。 如果使用了验证函数,Greenplum会验证提供的选项名字和值。

OWNER TO new_owner

指定外部数据包装的新所有者,只有超级用户可以拥有外部数据包装。

RENAME TO 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 TO 选项是Greenplum数据库的扩展。