DB2 SQL Error: SQLCODE = -798, SQLSTATE = 428C9


DB2 SQL Error: SQLCODE = -798, SQLSTATE = 428C9报错是因为 , 你往设置了ALWAYS自增的列里面插了初始值 . 

ALWAYS自增设置如下.

-- 设置主键自增
Alter table <tableName>  alter column <ID> set generated 
always as identity (start with 1,increment by 1);

所以要改成DEFAULT , 但更改之前请确认是否已经设置ALWAYS , 如果设置了 , 需要把自增删除 , 语句如下 .

-- 删除自增
ALTER TABLE <tableName> alter column <ID> DROP IDENTITY;

清楚自增之后 , 可以重新设置DEFAULT自增

-- 设置默认值自增
Alter table <tableName> alter column <ID> set generated 
BY DEFAULT as identity (start with 1,increment by 1);

DEFAULT自增表示 , 当插入语句自带值时 , 只要不重复 , 就可以插入 . 后面会在此值的基础上继续自增 .


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM