¿Por que se pieden las Sequences?

joselito
10 de Noviembre del 2005
Hola, amigos.
Desde hace un tiempo para acá, estamos teniendo unos problemas un tanto extraños con el tema de las Sequences.
El caso, es que al insertar en tabla, tenemos un Trigger BeforeInsert, en el cual, recuperamos el siguiente valor de la Sequence. Hasta ahora todo bien. Sin problemas.
Pero hace una semana o asi, empezaron a darnos problemas de restricción de Integridad, ya que el valor de la Sequence ¡¡ Se perdía !!.. Si debía tener el valor 3045 de repente, tenía el valor 13 o 14... y claro, al existir como PK en la tabla, error al canto.
¿Qué ocurre?. El máximo valor, es altísimo.... con lo que no es por eso, y en la definición de la Sequence, tiene NOCYCLE y NOCACHE...
No tengo ni idea de por qué se pueden perder... ¿es algún bug de Oracle?... ¿O es la propia creación de la Sequence lo que falla?.
¿Os ha ocurrido alguna vez?...
Si alguien tiene la solución, ruego me escriba a mi correo o bien responda a este asunto, pues me es de urgencia.
Muchas gracias.

Un saludo.
JOSE.

aloe
10 de Noviembre del 2005
busca en tu interior y encontrarás la respuesta..........

Jor-El
10 de Noviembre del 2005
Pon el script de creación de la secuencia y ejecuta estas dos select y ponme el resultado.

select increment_by,cycle_flag,cache_size,last_number,max_value
from dba_sequences
where sequence_name like 'TU_SECUENCIA';

SELECT CREATED,LAST_DDL_TIME,TIMESTAMP FROM ALL_OBJECTS
WHERE OBJECT_NAME LIKE 'TU_SECUENCIA';

joselito
10 de Noviembre del 2005
Hola, y gracias por tu respuesta;
Bueno, pues aquí van los resultados que me pedias:
- En la primera Select, me aparece lo siguiente:

INCREMENT_BY: 1
CYCLE_FLAG: N
CACHE_SIZE: 0
LAST_NUMBER: 7358
MAX_VALUE: 1E27

... y en la Segunda Select que me dices, me aparecen 2 registros:
CREATED: 19/04/2005 9:00:56
LAST_DDL_TIME: 19/04/2005 9:00:56
TIME_STAMP: 2005-04-19:09:00:56

CREATED: 10/11/2005 9:32:00
LAST_DDL_TIME: 10/11/2005 9:32:00
TIME_STAMP: 2005-11-10:09:32:00

el Script de creacion que utilizo es el siguiente:
CREATE SEQUENCE NOMBRE INCREMENT BY 1 START WITH 1 MINVALUE 1 NOCYCLE NOCACHE NOORDER

A ser posible respondeme a mi correo.
Muchisimas gracias de antemano.

Carlos
10 de Noviembre del 2005
Lo más seguro es que se hayan vuelto a crear con los mismos valores de la creación original, por lo que la cuenta comenzó de nuevo y los valores aparecen repetidos.

Un saludo.

Carlos.