O que é sequência?
Uma sequência é um objeto de banco de dados que gera automaticamente a lista incrementada de valores numéricos de acordo com a regra especificada na especificação da sequência.
Por exemplo, para inserir o número do funcionário automaticamente na coluna (EMPLOYEE_NO) da Tabela, quando um novo registro é inserido na tabela, então usamos sequência.
Os valores de sequência são gerados em ordem crescente ou decrescente.
As sequências não são associadas a tabelas; eles são usados pelo aplicativo. Existem dois valores em sequência -
- CURRVAL - Fornece o valor atual da sequência.
- NEXTVAL - Fornece o próximo valor da sequência.
SINTAXE
CREATE SEQUENCE[ ] [RESET BY ]
ELEMENTOS DE SINTAXE
ELEMENTOS | DESCRIÇÃO |
---|---|
É o nome da sequência. | |
[ | Ele especifica um ou mais parâmetros de sequência. |
COMECE COM | Ele descreve o valor da sequência inicial. |
INCREMENT BY | Isso especifica o valor a ser incrementado a partir do último valor atribuído a cada vez que um novo valor de sequência for gerado. O padrão é 1. |
MAXVALUE | Isso especifica o valor máximo, que pode ser gerado pela sequência. |
SEM MAXVALUE | Quando NO MAXVALUE é especificado, para uma sequência ascendente, o valor máximo será 4611686018427387903 e o valor mínimo para uma sequência descendente será -1. |
MINVALUE | Ele especifica o valor mínimo que uma sequência pode gerar. |
CICLO | A diretiva CYCLE especifica que o número de sequência será reiniciado após atingir seu valor máximo ou mínimo. |
SEM CICLO | Opção padrão. A diretiva NO CYCLE especifica que o número de sequência não será reiniciado após atingir seu valor máximo ou mínimo. |
CACHE | O tamanho do cache especifica qual intervalo de números de sequência será armazenado em cache em um nó. |
SEM CACHE | Opção padrão. A diretiva NO CACHE especifica que o número de sequência não será armazenado em cache em um nó. |
RESET BY | Ele especifica que durante a reinicialização do banco de dados, o banco de dados executa automaticamente a |
Exemplo -
Criaremos uma sequência com o nome DHK_SCHEMA.EMP_NO, que criará um valor incrementado da sequência em +1 a cada vez, quando a sequência for usada.
Script de sequência -
CRIAR SEQUÊNCIA DHK_SCHEMA.EMP_NO COMEÇAR COM 100 AUMENTO DE 1.
Aqui, usaremos o objeto "sequência" no exemplo abaixo para incrementar o valor do funcionário não em +1 cada vez que a consulta de seleção for executada. Na consulta, o "nextval" pode ser usado para geração de número de série ou mesmo tipo de requisito.
Uso da sequência -
SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;
SAÍDA - 100.101.102
… Portanto, em cada execução da consulta selecionada acima.