欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle使用序列sequence时currval提示未在此会话中问题分析和解决办法

程序员文章站 2022-05-23 12:00:11
Oracle 序列使用时:ORA-08002: 序列 SEQ_WGB_TEST2.CURRVAL 尚未在此会话中定义 一、场景:Oracle中id经常使用序列自增,这就会导致新增...

Oracle 序列使用时:ORA-08002: 序列 SEQ_WGB_TEST2.CURRVAL 尚未在此会话中定义

一、场景:Oracle中id经常使用序列自增,这就会导致新增时id的使用(A表的主键ID,新增时,同时要在B表中存入一个相同的当前ID)

二、使用:CURRVAL(当前值) NEXTVAL(下一个值):

NEXTVAL可以单独使用在sql语句中;而CURRVAL在没有使用NEXTVAL的时候使用的话就会报错(尚未在此会话中定义)。

三、解决:在执行CURRVAL之前需要先执行NEXTVAL:

[html] view plain copy

select Svc_Sign_Seq.Nextval from dual;

select Svc_Sign_Seq.Currval from dual;