[firebase-br] Aos interessados: O melhorAutoincrementosequencial

Cristiano Rebonatto crebonatto em upf.br
Sex Abr 7 13:34:01 -03 2006


Estou acompanhando a discussão mas ainda não dei a minha "pitada".
Fico me perguntando qual a real finalidade de se manter a sequencia sem 
falhas ? 
E com a filosofia de Transações e multi-usuários, fica complicado fazer 
isso.  Cada um deve desenvolver sua maneira de controlar isso  e como 
depende de cada implementação, acredito não existir um "THE BES WAY" 
para isso.
Vamos utilziar como exemplo o Oracle, as Sequences funcionam da mesma 
maneira, uma vez utilizado o NEXTVAL, já era. Claro que sequences tem 
mto mais recursos que Generator, mas é o funcionamento é o mesmo. Talvez 
o FB poderia implementar o funcionamento Cíclico que tem no Oracle, mas 
isso é outro assunto.
Já que estamos falando em características do banco, gostaria de lançar 
uma sugestão para as próximas versões do FB , se é que existirão,

- Utilização de Packages
- Implementação de JOBS

É isso



Eduardo Jedliczka (TeamFB) escreveu:
> Não, não seria evitada, e nem amenizada....
>
> Em bases da M$ existe "auto-incremento" e ao dar um rollback a numeração 
> FURA da mesma forma que no ORACLE, ou FireBird.
>
> O fato de utilizar uma sintaxe diferente não quer dizer que "resolva".
>
> ======================
> Eduardo Jedliczka
> Membro do TeamFB - FireBase
> Apucarana - PR
> ======================
>
> ----- Original Message ----- 
> From: "Fabio" <clicklist em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Friday, April 07, 2006 11:40 AM
> Subject: Re: [firebase-br] Aos interessados: O 
> melhorAutoincrementosequencial
>
>
> Lá vem as pedras :-)
>
> Toda esta gambiarra seria evitada (ou amenizada) se ouvessem campos
> auto-incremento no Firebird...
>
> []'s
> Fabio
>
>
> On 4/7/06, Josauro S.J. <josauro em casasoft.inf.br> wrote:
>   
>> Em definitivo, para controlar bem a sequencia de códigos sem deixar furo
>> uso
>> uma tabela de registro mestre
>>
>>
>> TABELA MESTRE
>> NOMETABELA, NOMEDOCCAMPO, SEQUENCIA
>>
>>
>> Em uma transação separada, pode ser no inicio da inclusão, chama se
>> GetNovoCodigo, le se uma procedure que retorna o proximo codigo a ser
>> usado
>> da tabela/campo especificado, essa procedure procura no na tabela mestre o
>> conjunto tabela/campo se nao existir ou existir apenas um registro,
>> incrementa esse numero SEQUENCIA, caso existe mais de um  registro (sinal
>> de
>> que foi apagado algum registro na tabela de referencia) ai usa se a
>> SEQUENCIA maior e apaga esse registro da tabela MESTRE.
>>
>> Nos processos de exclusão, ou cancelamento da inclusão, chama se a
>> procedure
>> DevolveCodigo, o qual grava na tabela MESTRE o conjunto Tabela/Campo e na
>> SEQUENCIA coloca-se o codigo a ser reaproveitado, onde será pego na
>> próxima
>> Inclusão.
>>
>> Digo com certeza, funciona muito bem, para o propósito de reaproveitamento
>> de números.
>>
>>
>> (Este email foi verificado contra a presença de vírus, antes de ser
>> enviado, pelo nosso sistema de FireWall, entre em contato com a CasaSoft (
>> casasoft em casasoft.inf.br) e instale um em sua Empresa livre se de intrusos
>> e mantenha seus sistemas e clientes livres de vírus.)
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>>     
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço 
> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa 
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>   

-- 
+-----------------------------------------------------------+
 Cristiano Rebonatto 
 Setor de Análise e Desenvolvimento             
 Divisão de Tecnologia da Informação 
 Universidade de Passo Fundo
 Passo Fundo - RS
+-----------------------------------------------------------+




Mais detalhes sobre a lista de discussão lista