这是我的序列
CREATE SEQUENCE exp_seq
START WITH 3
INCREMENT BY 1
Cache 100;
触发:
create or replace TRIGGER auto_increment_reimb_id
BEFORE INSERT ON EXPENSE_TABLE
FOR EACH ROW
BEGIN
if :new.exp_id is null
then SELECT exp_seq.nextval into :new.exp_id from dual;
end if;
END;
我的Sql插入声明:
INSERT INTO EXPENSE_TABLE(USER_ID,AMOUNT,TIME_SUBMITTED,DESC,STATUS,TYPE_ID) VALUES(?,?,?,?,?,?)
我的第一个插入将增加1.但后续插入将增加2。 我没有在insert语句中传入pk id,只调用它来触发更新。所以我不明白为什么会这样。 在第一次插入时,pk列为4.在第二次插入时,它变为6.