2006-10-24

Valor actual de uma sequência

Hoje uma ajuda simples.

O ORACLE não providencia uma função para saber o valor corrente de uma sequência.

A chamada a CURRVAL, por exemplo
select <sequencia>.CURRVAL from dual;

dá erro ORA-08002: sequence DESTAQUES_SEQ.CURRVAL is not yet defined in this session
pois só funciona depois da sequencia ter sido usada (incrementada) via por exemplo

select <sequencia>.NEXTVAL from dual;

A solução é verificar pelas tabelas internas do ORACLE assim:

select last_number from user_sequences where sequence_name='<sequencia>';


Boa codificação


Actualização: este post foi traduzido para inglês e actualizado

No comments:

Post a Comment

Os comentários são moderados.
The comments are moderated.