ORACLE DDL - CREATE SEQUENCE

IExplorer bookmarks rss
Más vistos:
  1. CREATE INDEX
  2. DECODE
  3. TO_CHAR
  4. TO_DATE
  5. SELECT
  6. GRANT
  7. INSERT
  8. TUNNING
  9. UPDATE
  10. CREATE USER

Create Sequence

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