2025年9月25日: PostgreSQL 18 发布!
支持版本: 当前 (18) / 17 / 16 / 15 / 14 / 13
开发版本: devel
不支持版本: 12 / 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 子句是扩展。

提交更正

如果您在文档中发现任何不正确之处,与您对特定功能的实际体验不符,或者需要进一步澄清,请使用 此表单 报告文档问题。