您好,欢迎访问一九零五行业门户网

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

ora-08002: 序列 seq_wgb_test2.currval 尚未在此会话中定义
环境
oracle 11.2.0 + sql plus
问题
查询sequence的当前值出现以下错误:
sql> select seq_wgb_test2.currval from dual;
select seq_wgb_test2.currval from dual
      *
第 1 行出现错误:
ora-08002: 序列 seq_wgb_test2.currval 尚未在此会话中定义
解决
首先创建一个测试序列:
sql> create sequence seq_wgb_test2
  2  increment by 1
  3  start with 1000;
序列已创建。
然后查询当前值:
sql> select seq_wgb_test2.currval from dual;
select seq_wgb_test2.currval from dual
      *
第 1 行出现错误:
ora-08002: 序列 seq_wgb_test2.currval 尚未在此会话中定义
调用nextval后再次查询当前值:
sql> select seq_wgb_test2.nextval from dual;
  nextval
----------
      1000
sql> select seq_wgb_test2.currval from dual;
  currval
----------
      1000
sql>
创建sequence后直接查询它的当前值(currval)会出错,,要先调用sequence对象.nextval,才能查询当前值。注意:oracle是不区分对象名大小写的。
其它类似信息

推荐信息