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