自定义sql:
select seqa.nextval from dual
正常执行也都没什么问题。突然在重建了seqa后,再执行以上sql报ora-04016 序列seqa不在存在。
重建seqa语句:
DROP SEQUENCE seqa;
CREATE SEQUENCE seqa INCREMENT BY 1 START WITH 1 MAXVALUE 9999999999999999 MINVALUE 1 NOCACHE ORDER;
重建的语句是在function中写的,由nutz的{?=call a(?)} 调用的。
以上内容都是在java程序中执行的。
已确认:报错时数据库里的seqa确实存在,在sqldeveloper及sqlplus中执行select seqa.nextval from dual都好用。
在程序中执行时偶尔也是可以通过的。如果将重建seqa语句在sqldeveloper中执行后,此问题就不在出现。
求各位大神帮分析下,这是什么原因,该怎么解决?