序列号设置了CACHE,会user_sequences的user_sequence 是根据CACHE大小跳跃的,要想查当前值只能从内存中读取: SELECT KGLOBTN0-KGLOBTN1 FROM X$KGLOB WHERE KGLNAOBJ='SEQ_NAME'; 但普通用户没有权限,建议你还是调整需求。
你是不是写错了?你写的是:select last_number from user_sequence where sequence_name='SEQ_NAME';(是不对的,user_sequence应该写为user_sequences) 这样写才能执行吧:select last_number from user_sequences where sequence_name='SEQ_NAME';
只要执行过.nextval,执行currval就是当前值。
序列在多用户操作的时候你使用seq.currval是可能出现跳号的
SELECT KGLOBTN0-KGLOBTN1 FROM X$KGLOB WHERE KGLNAOBJ='SEQ_NAME';
但普通用户没有权限,建议你还是调整需求。
这样写才能执行吧:select last_number from user_sequences where sequence_name='SEQ_NAME';