最近碰到向一张表中插入一条数据,可怎么样都是失败的,报错: SQLCODE=-798, SQLSTATE=428C9, SQLERRMC=ID
这个错的意思是不能向自增长的表中插入数据。
那怎么办呢?
小编只想到了一种笨方法,就是insert时,去掉自增长这个字段,插入其他的数据,这样表就会自己增加这个自增长的字段数据。
比如表结构是:
CREATE TABLE
TM_DIT_DIC
(
ID INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY,
ORG CHARACTER(12),
DIC_TYPE VARCHAR(100),
TAB_NAME VARCHAR(200),
FORM_NAME VARCHAR(200),
ITEM_NAME VARCHAR(200),
REMARK VARCHAR(200),
JPA_VERSION INTEGER,
TYPE_NAME VARCHAR(200),
IF_USED VARCHAR(20),
IF_CAN_DEL VARCHAR(20),
PRIMARY KEY (ID)
);
插入一条语句的sql就是:
insert into TM_DIT_DIC(ORG,DIC_TYPE,TAB_NAME,FORM_NAME,ITEM_NAME,REMARK,JPA_VERSION,TYPE_NAME)
values('02','ww','ww','ee','33','22',0,'ww');
不带入id这个自增长字段。
小编只想到了这个方法,如果有朋友有更好的方法,欢迎指教。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/106300.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...