ALTER FOREIGN DATA WRAPPER
功能描述
修改外部数据封装的定义。
注意事项
- 只有初始用户和系统管理员用户能够修改外部数据封装。
- 只有在support_extended_features=on时才能够成功执行alter语句。
语法格式
- 设置外部数据封装属性
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;
参数说明
- name
已有外部数据封装的名字。
- HANDLER handler_function
为外部数据封装指定一个新的处理函数。
- NO HANDLER
这个参数用来指定外部数据封装不再拥有处理函数。
使用外部数据封装但没有handler的外表不能访问。
- VALIDATOR validator_function
为外部数据封装指定一个新的验证函数。
根据新的验证器,外部数据封装器或依赖的服务器、 用户映射或外部表的已经存在的选项是有可能是无效的。用户在使用外部数据封装之前需要保证这些选项是正确的。 不过,ALTER FOREIGN DATA WRAPPER 命令中指定的任何选项都将使用新的验证函数检查。
- NO VALIDATOR
这个用来指定外部数据封装不再有验证函数。
- OPTIONS ( [ ADD | SET | DROP ] option ['value'] [, ... ] )
修改外部数据封装的选项。 ADD, SET, 和 DROP 指定表现的动作。如果没有明确指定操作默认是ADD。选项名必须唯一。 使用外部数据封装验证函数时,名字和取值也会被验证。
- new_owner
外部数据封装新的所有者的用户名。
- new_name
外部数据封装的新名称。
示例
--修改一个外部数据封装dbi,增加选项foo,删除bar gaussdb=# ALTER FOREIGN DATA WRAPPER dbi OPTIONS (ADD foo '1', DROP 'bar'); --修改外部数据封装dbi验证器为bob.myvalidator gaussdb=# ALTER FOREIGN DATA WRAPPER dbi VALIDATOR bob.myvalidator;