Oracle e seu objeto Sequence

Veja neste artigo o objeto Sequence do Oracle.

Oracle e seu objeto Sequence

Entenda como funciona a Sequence no Oracle

 

Para utilizar um campo com Auto-Numeração ou Identity como é conhecido por vários sistemas no mercado o Oracle Database traz um objeto chamado SEQUENCE no qual é responsável por essa atividade.

 

Características

- Acelera a busca do próximo valor a ser utilizado caso esteja na memória;

- Retira do programador a responsabilidade de ficar controlando o "Next

  Value" de um determinado campo;

- Geralmente utilizada em campos que tem a Constraint Primary Key;

- Pode ser um objeto compartilhado, ou seja, pode ser utilizado por várias

   tabelas ao mesmo tempo;

- Gera números únicos automaticamente.

 

Parâmetros

CREATE SEQUENCE <name>

INCREMENT BY n

START WITH n

MAXVALUE n

NOCYCLE

CACHE n;

 

Increment by

irá adicionar ‘n’ em cada número gerado;

Start

valor no qual a sequence irá iniciar;

MaxValue

irá gerar no máximo até o valor ’n’;

NoCycle

Não irá continuar caso o tamanho máximo chegue ao seu limite;

Cache

quantidade de números gerados na memória para facilitar a utilização da sequence. Ao utilizar o cache tem um ganho muito grande no momento da utilização do "Next Value", porém, todos os números que estão na memória e ainda não foram utilizados serão perdidos caso ocorra algum problema com a SGA.

 

Exemplo prático

-- Cria Sequência

create sequence seq_DBCenter

increment by 1

start with 1

maxvalue 500

nocycle

cache 10;

 

-- Cria Tabela

create table tb_aluno

(codigo number(3),

 nome varchar2(50));

-- Inclui registro na tabela criada utilizando a sequence SEQ_DBCENTER

insert into tb_aluno (codigo, nome)

values (seq_DBCenter.nextval, 'Felipe');

 

Conclusão


A utilização de Sequence é considerada uma das “Best Practices” no mercado.

Ebook exclusivo
Dê um upgrade no início da sua jornada. Crie sua conta grátis e baixe o e-book

Artigos relacionados