2024年9月26日: PostgreSQL 17 发布!
支持的版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不受支持的版本:11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4

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

提交更正

如果您在文档中看到任何不正确的内容、与您对特定功能的体验不符的内容或需要进一步澄清的内容,请使用 此表单 报告文档问题。