Este capítulo le presenta el concepto de secuencia, la creación de una secuencia, la visualización de una secuencia y su eliminación.
Una secuencia es una función de software que genera números enteros en orden ascendente o descendente dentro de un rango específico para generar una clave primaria y coordinar otras claves en una tabla. Estás usando una secuencia para usar números enteros como employee_id o transaction_id. La secuencia puede admitir los tipos de datos SMALLINT, BIGINT, INTEGER y DECIMAL. La secuencia puede ser compartida por múltiples aplicaciones. La secuencia aumenta o disminuye independientemente de las transacciones.
La secuencia se crea con la instrucción CREATE SEQUENCE.
Hay dos tipos de secuencias disponibles:
NEXTVAL: Devuelve el valor incrementado del ordinal.
COSTE ANTERIOR: Devuelve el valor recién creado.
Los siguientes parámetros se utilizan para las secuencias:
Tipo de datos: Este es el tipo de datos del valor de retorno incrementado. (INFERIOR, GRANDE, INTEGRAL, NUMERO, DUAL)
EMPEZAR CON: El valor de referencia en el que comienza la secuencia.
MINVALUE: El valor mínimo para iniciar la secuencia.
VALOR MÁXIMO: El valor máximo de la secuencia.
CRECIMIENTO POR: el valor de paso en el que se incrementa la secuencia.
Secuencia de bucle: La cláusula CYCLE hace que se vuelva a generar la secuencia. La secuencia se genera haciendo referencia al valor de retorno, que se almacena en la base de datos por la generación anterior de la secuencia.
Puede crear una secuencia con la siguiente sintaxis:
Sintaxis:
db2 create sequence <seq_name>
Ejemplo: [To create a new sequence with the name ‘sales1_seq’ and increasing values from 1]
db2 create sequence sales1_seq as int start with 1 increment by 1
Puede ver la secuencia utilizando la sintaxis siguiente:
Sintaxis:
db2 value <previous/next> value for <seq_name>
Ejemplo: [To see list of previous updated value in sequence ‘sales1_seq’]
db2 values previous value for sales1_seq
Salida:
1 ----------- 4 1 record(s) selected.
Para descartar una secuencia, debe utilizar el comando «DROP SEQUENCE». He aquí cómo hacerlo:
Sintaxis:
db2 drop sequence <seq_name>>
Ejemplo: [To drop sequence ‘sales1_seq’ from database]
db2 drop sequence sales1_seq
Salida:
DB20000I The SQL command completed successfully.
🚫