更改外部数据包装器

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

Description

ALTER FOREIGN DATA WRAPPER更改外部数据包装器的定义。命令的第一种形式更改了外部数据包装器的支持功能或通用选项(至少需要一个子句)。第二种形式更改了外部数据包装器的所有者。

只有超级用户才能更改外部数据包装器。此外,只有超级用户才能拥有外部数据包装器。

Parameters

  • name

    • 现有外部数据包装器的名称。
  • HANDLER handler_function

    • 为外部数据包装器指定一个新的处理函数。
  • NO HANDLER

    • 这用于指定外部数据包装器不再具有处理程序功能。

请注意,不能访问使用没有处理程序的外部数据包装器的外部表。

  • VALIDATOR validator_function

    • 为外部数据包装器指定一个新的验证器函数。

请注意,根据新的验证器,外部数据包装程序或从属服务器,用户 Map 或外部表的预先存在的选项可能无效。 PostgreSQL 不检查这一点。在使用修改后的外部数据包装程序之前,用户需要确保这些选项正确。但是,将使用新的验证器来检查此ALTER FOREIGN DATA WRAPPER命令中指定的任何选项。

  • NO VALIDATOR

    • 这用于指定外部数据包装器不应再具有验证器功能。
  • OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )

    • 更改外部数据包装器的选项。 ADDSETDROP指定要执行的动作。如果未明确指定任何操作,则假定ADD。选项名称必须唯一。还可以使用外部数据包装器的验证器功能(如果有)来验证名称和值。
  • new_owner

    • 外部数据包装程序的新所有者的用户名。
  • new_name

    • 外部数据包装器的新名称。

Examples

更改外部数据包装器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;

Compatibility

ALTER FOREIGN DATA WRAPPER符合 ISO/IEC 9075-9(SQL/MED),但HANDLERVALIDATOROWNER TORENAME子句是 extensions。

See Also

创建外部数据包装器, 丢弃外来数据包装器