Cómo obtener la secuencia siguiente en DB2

by admin

Cómo obtener la secuencia siguiente en DB2

Una secuencia de DB2 es un conjunto predefinido de números. DB2 puede generar automáticamente un número secuencial para una columna en una base de datos que se define como una columna de "identidad". El valor inicial, el tamaño mínimo de la memoria caché y se pueden especificar en la definición de la columna de identidad de la tabla. Las columnas de identidad se definen generalmente como un tipo de datos "Bigint", y el siguiente valor se genera y se insertan cuando se ejecuta una "INSERT" automáticamente. Una secuencia da el programador más control mediante la creación de un intervalo específico de números de la secuencia.

Instrucciones

1 Abrir la ventana, escriba "DB2" mandatos de DB2 y pulsa "Enter". Esto inicia el procesador de línea de mandatos de DB2 para el cliente DB2, donde puede introducir comandos de DB2.

2 Conectarse a la base de datos escribiendo "conectar con el usuario UsUaRiO myDB usando MiContraseña." Crear la secuencia escribiendo el comando "CREATE SEQUENCE" en la ventana de mandatos de DB2. Proporcionar el valor inicial, el valor mínimo de la subasta, valor máximo, valor mínimo, ciclo, caché y el orden. El comando debería ser similar a:

CREAR SECUENCIA MYSEQUENCE

INICIAR CON 1

Incrementar en 1

NO MINVALUE

MAXVALUE 9999

CICLO

NO CACHE

ORDEN

3 Hacer referencia a la secuencia en un "INSERT" o "UPDATE" declaración usando "Siguiente Valor" o "valor anterior." Para insertar un nuevo registro en una tabla llamada "cliente" y agarrar el siguiente número disponible en la secuencia definida anteriormente para el valor "CUSTOMER_NUMBER", introduzca "Insertar en el cliente (CUSTOMER_NUMBER, nombre-cliente) VALUES (NEXT VALUE PARA mySequence," Joe Smith ') ".

4 Use "PREVIOUS VALUE" para acceder al número de secuencia generado más recientemente. Este comando sólo se puede especificar si una sentencia "NEXT VALUE" ya ha sido emitido dentro de la transacción actual o anterior. Para obtener el valor anterior en un comunicado "UPDATE", introduzca "UPDATE customer SET CUSTOMER_NUMBER = PREVIOUS VALUE para mySequence DONDE customer_id = 10."

Consejos y advertencias

  • "CREATE SEQUENCE" también puede ser emitida desde el interior de un programa de aplicación; Sin embargo, debe tener autorización SYSADM o DBADM para ejecutar.
ETIQUETA: