SEQUENCE CURRVAL报错 在PL/SQL中执行SELECT SEQ_GC.CURRVAL FROM DUAL;报序列尚未在会话中定义的错误,序列是存在的,什么原因? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在同一session里,要先执行SELECT SEQ_GC.NEXTVAL FROM DUAL;然后再执行SELECT SEQ_GC.CURRVAL FROM DUAL; 刚创建你序列的时候,第一次用序列前,要先用nextval,以后才能用currval 在同一个session中如果没有取nextval的话是取不到currval的scott@YPCOST> create sequence testseq start with 1 increment by 1;序列已创建。scott@YPCOST> select testseq.currval from dual;select testseq.currval from dual *第 1 行出现错误:ORA-08002: 序列 TESTSEQ.CURRVAL 尚未在此会话中定义scott@YPCOST> select testseq.nextval from dual; NEXTVAL---------- 1scott@YPCOST> select testseq.currval from dual; CURRVAL---------- 1 这个在PL/SQL中是会存在该问题,是ORACLE PL/SQL的一个问题。先执行SELECT SEQ_GC.NEXTVAL FROM DUAL;然后再执行SELECT SEQ_GC.CURRVAL FROM DUAL; nextval是去sequence取一个值,currval是当前取得的值. 1 先执行 取值SELECT SEQ_GC.nextval FROM DUAL2 在执行获取当前的值SELECT SEQ_GC.CURRVAL FROM DUAL古语有云 先有女人 才能有后代 看来csdn 还是有吸引力 以前都都回来了 先有nextval, 去生成值,然后才能取当前的生成值。不过,oracle这种方式挺让人不爽,如果没有生成值,可以返回-1之类的,可以让用户有个选择。 缺少什么关键字 dense_rank()在子查询导致sql运行速度变慢 ORA-12500 : TNS监听程序无法启动专用服务器进程~ 急 帮个忙哦 关于PLSQL无法访问数据库的奇怪问题 我的oms为什么启动不了 Oracle的一件怪事,大家帮忙解决啊! TOAD命令行方式导出文件 初学者关于update的问题?! 怎么设置sqlplus下的edit命令所用的编辑器? oracle 的古怪问题 oracle存储过程执行一段时间后,就会死掉,没有抱错,请朋友们帮我看看是什么原因 MSSQL里的存储过程转到ORACLE中来
SELECT SEQ_GC.NEXTVAL FROM DUAL;然后再执行
SELECT SEQ_GC.CURRVAL FROM DUAL;
select testseq.currval from dual
*
第 1 行出现错误:
ORA-08002: 序列 TESTSEQ.CURRVAL 尚未在此会话中定义
scott@YPCOST> select testseq.nextval from dual; NEXTVAL
----------
1scott@YPCOST> select testseq.currval from dual; CURRVAL
----------
1
先执行SELECT SEQ_GC.NEXTVAL FROM DUAL;
然后再执行SELECT SEQ_GC.CURRVAL FROM DUAL;
SELECT SEQ_GC.nextval FROM DUAL2 在执行获取当前的值
SELECT SEQ_GC.CURRVAL FROM DUAL古语有云 先有女人 才能有后代
不过,oracle这种方式挺让人不爽,如果没有生成值,可以返回-1之类的,可以让用户有个选择。