Ativação de Generator

Delphi

16/05/2006

Pessoal!
Tenho um cadastro em que uso um código de autoincremento.
Para isso pretendo usar um generator. Há alguma diferença em incrementar esse generator através de uma trigger ou através do próprio Delphi? Muda alguma coisa com relação a performance?
Estou usando o Delphi 7 com Firebird 1.5 e FibPlus...

Obrigado!


Tomew

Tomew

Curtidas 0

Respostas

Paullsoftware

Paullsoftware

16/05/2006

Uma lógica básica para geração do Gereador seria essa

Sua tabela >> Sua trigger >> Seu Gerador

o gerador normalmente é executado quando há uma solicitação de um novo registro, pórem, dependendo dos componentes de acesso aos dados que vc está usando os mesmos podem ser executados e somente mostrar o código gerado quando for dado um Post/ApplyUpdates mais normalmente eu uso a propriedade Generator no meu caso do IbDataSet para chamar o gerador quando for dado o comando de Insert na tabela, por outro lado existe uma falha, que é quando usamos o gerador pelo delphi significa que mesmo se você cancelar a operação o códig gerado pelo gerador não será mais usado diferente de executar somente depois do Post/ApplyUpdates...

Quanto a chamar pelo Delphi eu prefiro deixar que o banco faça isso, pois, assim a faço com que menas tarefas sejam executadas na estação...
espero ter ajudado :wink:


GOSTEI 0
Catunda

Catunda

16/05/2006

oi,
Quanto à performance, acho que não tem diferença significativa, principalmente se o seu sistema não for multiusuário, mas normalmente dou preferencia ao tratamento no próprio código do delphi utilizando o Gen_ID(). Na minha opinião vc tem um melhor controle da incrementação e um retorno visual melhor. Costumo sempre aplicar a função no evento beforepost do dataset.


GOSTEI 0
Tomew

Tomew

16/05/2006

Muito obrigado pelas respostas... vou testar ambas as opções e decidir por uma delas.


GOSTEI 0
POSTAR