Criando e Gerenciando Sequências
As sequências são objetos do esquema dos quais você pode gerar valores sequenciais exclusivos, que são muito úteis quando você precisa de chaves primárias exclusivas. As sequências são utilizadas por meio das pseudocolunas CURRVAL e NEXTVAL, que retornam os valores atual e próximo da sequência, respectivamente.
Depois de criar uma sequência, você deve inicializá-la usando NEXTVAL para obter seu primeiro valor. Somente depois que você inicializa uma sequência CURRVAL retorna seu valor atual.
O esquema HR tem três sequências: DEPARTMENTS_SEQUENCE, EMPLOYEES_SEQUENCE e LOCATIONS_SEQUENCE.
Dica: Quando você planeja usar uma sequência para preencher a chave primária de uma tabela, forneça à sequência um nome que reflita essa finalidade. (Este tópico usa a convenção de nomenclatura TABLE_NAME_SEQUENCE.)
Consulte também:
-
O Oracle Database Concepts, para uma visão geral das sequências
-
Referência de Linguagem SQL do Oracle Database para obter mais informações sobre as pseudocolunas CURRVAL e NEXTVAL
-
Oracle Database Administrator's Guide para obter informações sobre o gerenciamento de sequências
Tutorial: Criando uma Sequência
Este tutorial mostra como usar a ferramenta Criar Sequência de Banco de Dados para criar uma sequência a ser usada para gerar chaves primárias para a tabela EVALUATIONS.
A tabela EVALUATIONS foi criada em Exemplo 4-1.
Para criar uma sequência, use a ferramenta SQL Developer CREATE SEQUENCE ou a instrução DDL CREATE SEQUENCE. A instrução DDL equivalente é:
CREATE SEQUENCE evaluations_sequence
INCREMENT BY 1
START WITH 1 ORDER;
Etapas para criar EVALUATIONS_SEQUENCE usando a ferramenta Create Database Sequence:
-
No quadro Conexões, expanda hr_conn.
-
Na lista de tipos de objeto de esquema, clique com o botão direito do mouse em Sequências.
-
Na lista de opções, clique em Nova Sequência.
-
Na janela Criar Sequência, no campo Nome, digite
EVALUATIONS_SEQUENCEsobre o valor padrão "SEQUENCE1". -
Se o painel Propriedades não for exibido, clique na guia Propriedades.
-
No painel de Propriedades:
-
No Incremento do campo, digite
1. -
No campo Start with, digite
1. -
Para os campos restantes, aceite os valores padrão.
-
Clique em OK.
A sequência EVALUATIONS_SEQUENCE é criada. Seu nome aparece em Sequências no quadro Conexões.
-
Consulte também:
-
Oracle SQL Developer User's Guide para obter mais informações sobre o uso do SQL Developer para criar uma sequência
-
Referência de Linguagem SQL do Oracle Database para informações sobre a instrução CREATE SEQUENCE
-
"Tutorial: Criando um Trigger que Gera uma Chave Primária para uma Linha Antes de ser Inserida" para aprender a criar um trigger que insere as chaves primárias criadas por EVALUATIONS_SEQUENCE na tabela EVALUATIONS
Eliminando Sequências
Para eliminar uma sequência, use o quadro Conexões do SQL Developer e a ferramenta Eliminar ou a instrução DDL SEQUENCE DE DROP.
Esta instrução elimina a sequência EVALUATIONS_SEQUENCE:
DROP SEQUENCE EVALUATIONS_SEQUENCE;
Cuidado: Não elimine a sequência EVALUATIONS_SEQUENCE—você precisa dela para o Exemplo 5-3. Se quiser praticar a eliminação de sequências, crie outras e, em seguida, elimine-as.
Etapas para eliminar uma sequência usando a ferramenta Eliminar:
-
No quadro Conexões, expanda hr_conn.
-
Na lista de tipos de objeto de esquema, expanda Sequências.
-
Na lista de sequências, clique com o botão direito do mouse no nome da sequência a ser eliminada.
-
Na lista de opções, clique em Eliminar.
-
Na janela Eliminar, clique em Aplicar.
-
Na janela Confirmação, clique em OK.
Consulte Também: Referência de Linguagem SQL do Oracle Database para saber mais sobre a instrução DROP SEQUENCE