
# ALTER EXTERNAL SCHEMA
#### 功能描述
修改EXTERNAL SCHEMA（外部模式）的属性。该语法仅8.3.0及以上版本支持。
#### 语法格式
根据指定的名称修改EXTERNAL SCHEMA。
```
ALTER EXTERNAL SCHEMA schema_name 
    WITH [ SOURCE source_name ]
         [ DATABASE 'database_name' ]
         [ SERVER server_name ]
         [ CATALOG 'catalog_name' ]
         [ OPTIONS ( { option_name ' value ' } [, ...] ) ]
         [ METAADDRESS 'address']
         [ CONFIGURATION 'confpath'];
```
#### 参数说明
表1ALTER EXTERNAL SCHEMA参数说明 
| 参数            | 描述                                                                                                                                                                                              | 取值范围                                                              |
|:---|:---|:---|
| schema_name   | 需要修改的外部模式的名称。                                                                                                                                                                                   | 已有的外部模式名。                                                         |
| SOURCE        | 外部元数据存储引擎的类型。                                                                                                                                                                                   | 当前source_type仅支持dli，lakeformation，hive。                           |
| DATABASE      | 指定外部SCHEMA所对应的要访问的数据库。                                                                                                                                                                          | -                                                                 |
| SERVER        | 通过external schema关联foreign server以达到访问外部数据的目的。                                                                                                                                                  | 已存在的foreign server且type类型为lf、obs、dli或hdfs。                        |
| CATALOG       | Lakeformation中对应的要访问的目录名称。                                                                                                                                                                      | -                                                                 |
| OPTIONS       | 指定外表数据的各类参数。该参数仅8.3.0及以上版本支持。                                                                                                                                                                   | dli_project_id，DLI服务对应的项目编号，可在管理控制台上获取项目ID，该参数仅支持server类型为DLI时设置。 |
| METAADDRESS   | Hive Metastore通讯接口地址。该参数仅9.1.0及以上版本支持。                                                                                                                                                          | -                                                                 |
| CONFIGURATION | Hive Metastore相关配置文件存放路径。该参数仅9.1.0及以上版本支持。 如果当前搜索路径上的模式中存在同名对象时，需要明确指定引用对象所在的模式。可以通过命令SHOW SEARCH_PATH来查看当前搜索路径上的模式。 | -                                                                 |
   
#### 示例
准备前置条件：
1. 参见《数据仓库服务用户指南》的"管理LakeFormation数据源"章节分别创建名称为lf_server和my_server的server。
2. 创建名称为ex1的EXTERNAL SCHEMA。
   ```
   CREATE EXTERNAL SCHEMA ex1
       WITH SOURCE lakeformation
            DATABASE 'demo'
            SERVER lf_server
            CATALOG 'hive';
   ```
   
修改名称为ex1的EXTERNAL SCHEMA对应的数据库和FOREIGN SERVER。
```
ALTER EXTERNAL SCHEMA ex1
    WITH DATABASE 'demo'
         SERVER my_server;
```
