LOGIN:

iMasters | Por uma internet mais criativa e dinâmica

Feeds

Oracle

Feed da seção Oracle

Newsletter de Oracle


Segunda-feira, 30/09/2002 - 01:59 - Por Rodrigo Almeida
Seções relacionadas:

Objeto Sequence do Oracle


Olá Pessoal,

Tenho recebido muitos e-mails falando de como utilizar o objeto Sequence do Oracle, por está razão resolvi falar com detalhes e relatar os pontos bons e ruins dele.

Este objeto é utilizado dentro do banco de dados para fazer uma especie de "auto-incremento", utilizando números sequenciais positivos ou negativos para uma coluna especifíca. Utilizamos este objeto quando queremos uma coluna que organize os registro do banco, um exemplo, seria a utilização do Sequence para criação de colunas de Código ou Matrícula.

Abaixo se tem um exemplo de criação do Sequence determinando suas opções de uso:

SQL >
CREATE SEQUENCE ALPHAMEK
2
START WITH 1
3
INCREMENT BY 1
4
MAXVALUE 999
5
CYCLE
6
CACHE 10 ;
 

Na 1º Linha estamos dizendo para o Oracle criar uma sequencia com o nome ALPHAMEK.

Na 2º Linha será especificado o primeiro número da sequencia, no exemplo está 1.

A 3º Linha vamos determinar o numero de incremento, no caso 1 em 1.

Na 4º Linha será determinada o número máximo que a sequencia atingirá, exemplo 999 números.

A 5º Linha indica que a geração dos números será após ter atingido o número máximo ou o número minimo para as sequencias decrescentes.

E a 6º Linha irá especificar para o banco uma quantidade de números que será guardado na memoria para posteriormente fazer uma consulta rápida.

Bom, agora deu para entender a criação de um objeto sequence dentro do banco, precisamos saber agora como utilizalá, e para isso basta você incluir o sequence dentro do seu comando Insert, veja o exemplo :

SQL >
INSERT INTO IMASTERS (CODIGO, NOME, EMAIL, SITE)
2
VALUES (ALPHAMEK.NextVal,'RODRIGO', 'rodrigo@noreal.com','www.noreal.com.br');

A linha acima foi incluida com sucesso, mas percebe que apareceu uma palavra-chave em vermelho após digitar o nome da sequence, essa palavra-chave é para obter o próximo número sequencial (NextVal), poderiamos utilizar outra palavra-chave a CurrVal que nos daria o valor atual da sequencia.

Depois de termos criado a sequence para a tabela, irei falar sobre alguns pontos bons e ruins na sua utilização no dia-dia.

Pontos Bons

- Ajuda na organização dos registros.

- Podemos utilizar uma unica sequence para várias tabelas do banco de dados, economizando tempo e mão-de-obra.

Pontos Ruins

- Caso tenha uma perca de memoria ou uma falha do sistema, o objeto perderá toda numeração sequencial, ficando totalmente inutilizavel.

- Caso você execute o comando DELETE na sua tabela, o número da sequencia que você deleto será pedido, então ficará um "burraco" na sua coluna, pois a sequence não é um auto-incremento que deixará sempre o registro com numeração correta.

Depois de citar o empate tecnico entre os pontos bons e ruins, vamos pensar que você queira ter um controle sobre as Sequences que você criou no banco. Como fazer isso ?

Seus problemas acabaram, pois o maravilhoso Oracle sabe como fazer isso bem facilmente, cada usuário tem seu shema onde é guardada todas as sequences, type, type_methods e etc.. e um simples comando você consegue ver as sequences que estão no seu Shema.

SQL > DESC SYS.USER_SEQUENCES

Ele irá ter retorna a descrição resumida da User_Sequence do Shema para você.

Um Abraço pessoal!

Todos os artigos de Rodrigo Almeida

1 comentários publicados

  • 1. EXEPTION

    Segunda-feira, 17/05/2004, por Fernando Fonseca

    AEW, acho que podia aparece alguma coisa sobre eception alem de util eu n sei usa muito bem hehehe falow

    Responder comentário

Poste um comentário


Os textos publicados neste espaço são de responsabilidade única de seus autores (colunistas e leitores) e podem não expressar necessariamente a opinião do iMasters.

Sobre o autor

Rodrigo Almeida formando em analise de banco de dados pela IBTA-SP, especialista em microeletrônica pela INSA-AIME na França e Oracle Certified Associate 9i. Já trabalhou em empresas como BTC Texaco, DuPont do Brasil, Vivo São Paulo, Procwork, DBACorp e atualmente é DBA Oracle da Affinia Automotiva.


Indique para um amigo

captcha

TI SHOP Produtos iMasters

  • Lançamento: CD-ROM Treinamento Aplicado de SQL - Lançamento! Treinamento Aplicado de SQL - Aprenda a trabalhar com SQL com bancos de dados Oracle e SQL Server. São mais de 100 tópicos explicados por Mauro Pichilliani, um articulistas mais lidos do iMasters. Aproveite! Apenas R$ 69,90 no TI SHOP.
  • Lançamento: Livro iMasters "O Encontro de 2 Mundos"- Este livro conta com 56 crônicas de profissionais mais admirados e influentes do mercado brasileiro de Internet. Aproveite o preço especial para leitores do iMasters. Apenas R$ 40,00 e envio imediato!
  • DVD Curso Completo de Photoshop - Do conceito à finalização Lançamento! Curso Completo de Photoshop, em DVD, com mais de 230 aulas dividas em 4 módulos: conceito, básico, avançado e finalização. Apenas R$ 69,50 no TI SHOP - Frete com 50% de desconto
  • DVD Javascript Starter - Curso Completo Com mais de 9 horas de vídeo-aulas, é um curso completo sobre Javascript. Ideal para quem deseja aprender a linguagem. Apenas R$ 64,90 no TI SHOP - Frete com 50% de desconto!

2001 - iMasters FFPA Informática Ltda - Todos os direitos reservados.