
# U0100047: 请根据源语句实际场景填写对应数据类型
#### 描述
GaussDB 分布式不支持生成列。
**数据库类型与版本**
- 源库类型与版本：UGO 支持的 Oracle 版本。
- 目标库类型与版本：UGO 支持的 GaussDB 分布式版本。
**语法示例**
Oracle脚本：
```
CREATE TABLE test_con (
    createtime TIMESTAMP(3),
    createdate as (TO_CHAR(createtime, 'YYYYMMDD'))
);
```
#### 改造建议
1、表生成列改成普通表，数据类型为text；
2、生成列的值通过触发器等效实现。
GaussDB改写后的脚本：
```
CREATE TABLE test_con (
    createtime TIMESTAMP(3),
    createdate text
);
CREATE OR REPLACE FUNCTION dsc_fn_generated_test_con()
RETURN trigger
AS
BEGIN
NEW.createdate =  (NEW.createtime, 'YYYYMMDD');
RETURN NEW;
END;
/
CREATE TRIGGER dsc_tr_generated_test_con
BEFORE INSERT OR UPDATE
ON test_con
FOR EACH ROW
EXECUTE PROCEDURE dsc_fn_generated_test_con();
/
```
