Está en la página 1de 1

***SECUENCIAS***

-- QUÉ ES UNA SECUENCIA EN ORACLE?


Una secuencia es un objeto de base de datos el cual permite la generación de
números en un orden que puede ser o no consecutivo.

-- CÓMO SE CREA UNA SECUENCIA EN ORACLE?


CREATE SEQUENCE SECUENCIA10
START WITH 10
INCREMENT BY 50
MAXVALUE 300
NOCACHE
NOCYCLE

-- COMO SE EJECUTA UNA SECUENCIA?


CURRVAL: VARIABLE QUE TIENE EL VALOR ACTUAL DE LA SECUENCIA
NETXVAL: ES UN ITERADOR QUE CONTIENE EL VALOR DEL SIGUIENTE INCREMENTO
*SELECT SECUENCIA23.NEXTVAL FROM DUAL;
*SELECT SECUENCIA23.CURRVAL FROM DUAL;

-- QUÉ PASA CUANDO SE PONE NOCYCLE?


Especifique NOCYCLE para indicar que la secuencia no puede generar más valores
después de alcanzar su valor máximo o mínimo.
Este es el valor predeterminado.

-- QUÉ PASA CUANDO SE PONE CYCLE? SU RELACIÓN CON MINVALUE?


Especifique CYCLE para indicar que la secuencia continúa generando valores después
de alcanzar su valor máximo o mínimo.
La relacion con MinValue es que despues de terminar el Cycle se inicia en 1

-- RELACIONAR UNA SECUENCIA A UNA TABLA

CREATE TABLE EJEMPLO1


(CODIGO NUMBER DEFAULT SECUENCIA21.NEXTVAL,
NOMBRE VARCHAR2(60))

-- QUÉ PASA CON EL CONSECUTIVO DE LA SECUENCIA ANTE UN ROLLBACK?


Al borrar los registros el valor actual del consecutivo se conserva.

-- IMPACTO DEL PARAMETRO CACHE

CREATE SEQUENCE SECUENCIA24


START WITH 10
INCREMENT BY 50
MAXVALUE 300
CACHE 4
CYCLE
El cache permite obtener el ultimo valor de una secuencia sin alterar la misma
Al ejecutar la accion SELECT SECUENCIA25.NEXTVAL FROM DUAL; podemos obtener el
ultimo valor registrado en N veces se indique en el cache.

-- CONSULTAR TODAS LA SECUENCIAS DE UN USUARIO


SELECT * FROM USER_SEQUENCES;

También podría gustarte