[firebase-br] commitretaining
Fortes Marcelo
marcelosoftware em yahoo.com.br
Ter Set 26 16:51:13 -03 2006
O ideal é você ter uma transação para InterBase e Firebird
o mínimo de tempo necessário.
O problema é que um commit ou um rollback fecham seus
datasets, não é isso?
Então você está optando por commitretaining e
rollbackretaining
Em que a transação não é fechada realmente.
E acaba por criar um problema de performance, por isso,
não muito indicados.
No caso tente desenhar sua aplicação para estilo
Client/Server onde só um punhado pequeno de registros são
processados por vez, mas isso sana só parcialmente o
problema por que as veze fica chato mapear vários datasets
que estão fechados para abrirem etc...
Como suponho que estej usando IBX te indico que opte por
FIB Plus da devrace www.devrace.com, que são primos do ibx
melhorados, inclusive no Fib-plus você pode tem uma transação
só para leitura e outra pros updates, inserts, delets que
acaba com o problema de de deixar a transação aberta por
muito tempo, pois aí você dá um commit a cada update ou insert
ou delete.
O IBO também gerencia isso de forma bem elegante e inteligente
mas perde a compatibilidade com outros componentes.
Leia mais na seção artigos da www.firebase.com.br e você encon
trará dicas valiosas!
Marcelo Fortes.
No seu caso Basta ou o segundo se você quer todos os dois
procesos num batch só.
Try
ExecProc1;
Commitretaining;
Except
Rollbackretaining;
End;
Try
ExecProc2;
Commitretaining;
Except
Rollbackretaining;
End;
Commmit;
"wilton em wos" <wilton em wosinformatica.com.br> escreveu: Olá galera, preciso tirar uma duvida meio sinistra... como devo aplicar o
commitretaining, qual das estruturas é mais adequada??
Estrutura 1:
Startransaction;
Try
Try
ExecProc1;
Commitretaining;
Except
Rollbackretaining;
End;
Try
ExecProc2;
Commitretaining;
Except
Rollbackretaining;
End;
Commmit;
Except
Roolback;
End;
Estrutura 2:
Startransaction;
Try
ExecProc1;
Commitretaining;
ExecProc2;
Commitretaining;
Commmit;
Except
Roolback;
End;
Atenciosamente
Wilton de Oliveira
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.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
---------------------------------
Yahoo! Search
Música para ver e ouvir: You're Beautiful, do James Blunt
Mais detalhes sobre a lista de discussão lista