首页 > 代码库 > Datastage装载数据报错 -798 428C9 不能把一个值插入到用GENERATED ALWAYS定义的ROWID列

Datastage装载数据报错 -798 428C9 不能把一个值插入到用GENERATED ALWAYS定义的ROWID列

使用Datastage装载数据到下表中报错。

表结构

CREATE TABLE T(ID BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY(START WITH 1 INCREMENT BY 1),cst_name VARCHAR(100))

报错

技术分享

 

解决办法

新建表T_tmp

CREATE TABLE T_tmp(ID BIGINT ,cst_name VARCHAR(100))

导入到该表后再使用INSERT INTO ...SELECT ...语句到导入到T表

INSERT INTO T SELECT CST_NAME FROM T_tmp

这样数据就完美导入。

Datastage装载数据报错 -798 428C9 不能把一个值插入到用GENERATED ALWAYS定义的ROWID列