# 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'] } [, ... ]) ];
```
#### 参数说明
- **name**
  已有外部数据封装的名称。
  

- **HANDLER handler_function**
  为外部数据封装指定一个新的处理函数。
  

- **NO HANDLER**
  用于指定外部数据封装不再拥有处理函数。
  ![](https://support.huaweicloud.com/distributed-ref-v10-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
  使用外部数据封装但没有handler的外表不能访问。
  

- **VALIDATOR validator_function**
  为外部数据封装指定一个新的验证函数。
  ![](https://support.huaweicloud.com/distributed-ref-v10-gaussdb/public_sys-resources/notice_3.0-zh-cn.png)
  根据新的验证器，外部数据封装器或依赖的服务器、用户映射或外部表的已经存在的选项是有可能是无效的。用户在使用外部数据封装之前需要保证这些选项是正确的。不过，ALTER FOREIGN DATA WRAPPER 命令中指定的任何选项都将使用新的验证函数检查。
  

- **NO VALIDATOR**
  用于指定外部数据封装不再有验证函数。
  

- **OPTIONS ( \[ ADD \| SET \| DROP \] option \['value'\] \[, ... \] )**
  修改外部数据封装的选项，选项名需满足唯一约束。ADD、SET和DROP为指定执行的操作，如果未指定，默认为ADD。使用外部数据封装验证函数时，名称和取值也会被验证。
  
 
#### 相关链接
[CREATE FOREIGN DATA WRAPPER](https://support.huaweicloud.com/distributed-ref-v10-gaussdb/gaussdb-08-0247.html)，[DROP FOREIGN DATA WRAPPER](https://support.huaweicloud.com/distributed-ref-v10-gaussdb/gaussdb-08-0298.html)
