Crea un objeto capaz de darnos numeros consecutivos unicos.
CREATE SEQUENCE secuencia
INCREMENT BY n
START WITH n
{MAX VALUE n | NOMAXVALUE}
{MIN VALUE N | NOMINVALUE}
{CYCLE | NOCYCLE}
{CACHE N | NOCACHE}
{ORDER | NOORDER};
En realida es un generador de indentificadores unicos que no bloquea transacciones.
Es muy util para generar primary keys.
Si no nos gusta perder números usamos NOCACHE.CREATE SEQUENCE S_PROVEEDORES MINVALUE 1 START WITH 1 INCREMENT BY 1 NOCACHE;Si nos interesa la velocidad:
CREATE SEQUENCE S_PROVEEDORES MINVALUE 1 START WITH 1 INCREMENT BY 1 CACHE 20;Asi obtenemos el siguiente valor:
SELECT S_PROVEEDORES.NEXTVAL FROM DUAL;Tambien podemos obtener el valor actual:
SELECT S_PROVEEDORES.CURRVAL FROM DUAL;
Explicación de la sintaxis utilizada para los comandos: Las palabras en mayusculas son comandos de oracle. Las palabras en minusculas son opiones modificables Las partes enmarcadas con [] son opcionales Las palabras en negrita son las opciones por defecto Las partes enmarcadas con {} son alternativas (una u otra). El simbolo | indica OR