[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