Oracle CURRVAL应用限制
在连续的两个插入语句中,先在主表中插入一条记录(nextval获取序号),然后插入子表,插入子表时将序号(currval读取序号)作为关键字,如下所示
insert into parent(parent_id, ...) values(mysequence.NEXTVAL, ...); --主表 insert into child(parent_id, ...) values(mysequence.CURRVAL, ...); --子表
oracle会弹出序列未定义的错误。
好像跟oracle的版本有关,过去低版本可以,但是新版本不可以了。
可以先将NEXTVAL保存在本地,然后直接用本地值。