
# ALTER COLUMN
#### 功能开启
配置参数：
```
hoodie.schema.evolution.enable=true
```
#### 命令功能
**ALTER TABLE ... ALTER COLUMN**语法用于修改当前列属性包括列类型、列位置、列comment。
#### 命令语法
**ALTER TABLE** *tableName* **ALTER**
**\[COLUMN\]** *col_old_name* **TYPE** *column_type*
**\[COMMENT\]** *col_comment*
**\[FIRST\|AFTER\]** *column_name*
#### 参数描述
表1ALTER COLUMN参数描述 
| 参数           | 描述                                                        |
|:---|:---|
| tableName    | 表名。                                                       |
| col_old_name | 待修改的列名。                                                   |
| column_type  | 目标列类型。                                                    |
| col_comment  | 列comment。                                                 |
| column_name  | 位置修改参照列，例如：AFTER column_name的语义是要将待修改列放到参照列column_name之后。 |
   
#### 示例
- 列类型修改
  ```
  ALTER TABLE table1 ALTER COLUMN a.b.c TYPE bigint
  ```
  a.b.c 表示嵌套列全路径，嵌套列具体规则见[ADD COLUMNS](https://support.huaweicloud.com/sqlref-hudi-dli/dli_hudi_0061.html)。
  当前类型修改支持：
  - int =\> long/float/double/string/decimal
  
  - long =\> float/double/string/decimal
  
  - float =\> double/String/decimal
  
  - double =\> String/Decimal
  
  - Decimal =\> Decimal/String
  
  - String =\> date/decimal
  
  - date =\> String
   
- 其他修改
  ```
  ALTER TABLE table1 ALTER COLUMN a.b.c DROP NOT NULL
  ALTER TABLE table1 ALTER COLUMN a.b.c COMMENT 'new comment'
  ALTER TABLE table1 ALTER COLUMN a.b.c FIRST
  ALTER TABLE table1 ALTER COLUMN a.b.c AFTER x
  ```
  a.b.c 表示嵌套列全路径，嵌套列具体规则见[ADD COLUMNS](https://support.huaweicloud.com/sqlref-hudi-dli/dli_hudi_0061.html)。
  
 
#### 系统响应
通过运行**DESCRIBE**命令，可显示修改的列。
