SELECT last_number
FROM all_sequences
WHERE sequence_owner = '<sequence owner>'
AND sequence_name = '<sequence_name>';
Anda bisa mendapatkan berbagai metadata urutan dari user_sequences
, all_sequences
dan dba_sequences
.
Pandangan ini bekerja lintas sesi.
EDIT:
Jika urutannya dalam skema default Anda, maka:
SELECT last_number
FROM user_sequences
WHERE sequence_name = '<sequence_name>';
Jika Anda menginginkan semua metadata, maka:
SELECT *
FROM user_sequences
WHERE sequence_name = '<sequence_name>';
Semoga ini bisa membantu ...
EDIT2:
Cara bertele-tele untuk melakukannya dengan lebih andal jika ukuran cache Anda bukan 1 adalah:
SELECT increment_by I
FROM user_sequences
WHERE sequence_name = 'SEQ';
I
-------
1
SELECT seq.nextval S
FROM dual;
S
-------
1234
-- Set the sequence to decrement by
-- the same as its original increment
ALTER SEQUENCE seq
INCREMENT BY -1;
Sequence altered.
SELECT seq.nextval S
FROM dual;
S
-------
1233
-- Reset the sequence to its original increment
ALTER SEQUENCE seq
INCREMENT BY 1;
Sequence altered.
Berhati-hatilah bahwa jika orang lain menggunakan urutan selama ini - mereka (atau Anda) mungkin mendapatkannya
ORA-08004: sequence SEQ.NEXTVAL goes below the sequences MINVALUE and cannot be instantiated
Juga, Anda mungkin ingin mengatur cache NOCACHE
sebelum reset dan kemudian kembali ke nilai aslinya setelah itu untuk memastikan Anda tidak menembolok banyak nilai.