SQL | SECUENCIAS

La secuencia es un conjunto de números enteros 1, 2, 3, … que son generados y respaldados por algunos sistemas de bases de datos para producir valores únicos bajo demanda.

  • Una secuencia es un objeto vinculado a un esquema definido por el usuario que genera una secuencia de valores numéricos.
  • Las secuencias se utilizan con frecuencia en muchas bases de datos porque muchas aplicaciones requieren que cada fila de una tabla contenga un valor único y las secuencias proporcionan una manera fácil de generarlas.
  • La secuencia de valores numéricos se genera en orden ascendente o descendente a intervalos definidos y se puede configurar para que se reinicie cuando supere max_value.

Sintaxis:

CREATE SEQUENCE sequence_name
START WITH initial_value
INCREMENT BY increment_value
MINVALUE minimum value
MAXVALUE maximum value
CYCLE|NOCYCLE ;

sequence_name: Name of the sequence.

initial_value: starting value from where the sequence starts. 
Initial_value should be greater than or equal 
to minimum value and less than equal to maximum value.

increment_value: Value by which sequence will increment itself. 
Increment_value can be positive or negative.

minimum_value: Minimum value of the sequence.
maximum_value: Maximum value of the sequence.

cycle: When sequence reaches its set_limit 
it starts from beginning.

nocycle: An exception will be thrown 
if sequence exceeds its max_value.

Ejemplo

A continuación se muestra la secuencia de creación de consultas de secuencia en orden ascendente.

  • Ejemplo 1:
    CREATE SEQUENCE sequence_1
    start with 1
    increment by 1
    minvalue 0
    maxvalue 100
    cycle;
    

    La consulta anterior creará una secuencia llamada secuencia_1 . La secuencia comenzará desde 1 y se incrementará en 1 con un valor máximo de 100. La secuencia se repetirá desde el valor inicial después de exceder 100.

  • Ejemplo 2:
    A continuación se muestra la secuencia de creación de consultas de secuencia en orden descendente.
    CREATE SEQUENCE sequence_2
    start with 100
    increment by -1
    minvalue 1
    maxvalue 100
    cycle;
    

    La consulta anterior creará una secuencia llamada secuencia_2 . La secuencia comenzará desde 100 y debe ser menor o igual que el valor máximo y se incrementará en -1 con un valor mínimo de 1.

  • Ejemplo de uso de secuencia: cree una tabla llamada estudiantes con columnas como id y nombre.
    CREATE TABLE students
    ( 
    ID number(10),
    NAME char(20)
    );
    

    Ahora inserte valores en la tabla

    INSERT into students VALUES(sequence_1.nextval,'Ramesh');
    INSERT into students VALUES(sequence_1.nextval,'Suresh');
    

    donde secuencia_1.nextval insertará id en la columna de id en una secuencia como se define en secuencia_1.
    Producción:

     ______________________
    | ID  |      NAME      |
    ------------------------
    |  1  |     Ramesh     |
    |  2  |     Suresh     |            
     ----------------------
    

Este artículo es una contribución de ARSHPREET SINGH . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *