[firebase-br] Transações com consultas

Carlos H. Cantu listas em warmboot.com.br
Seg Abr 8 18:27:44 -03 2013


O FIBPlus (e tb o IBO) permite a atribuição de uma transação de
Update, separada da transação de "query". O IBX não tem esse recurso.

Com isso, é recomendado deixar a transação de query como
ReadCommited+ReadOnly, pois isso não empaca a coleta de lixo.

[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org
www.warmboot.com.br - blog.firebase.com.br

FG> Acho essa uma boa discussão. Também sinto dificuldades.

FG> Eu uso FIBPlus, que é muito parecido com IBX.
FG> Eu tenho 1 componente GERAL de conexão ao banco. Ele tem 1
FG> FIBTransactiogeral.
FG> TODOS os componentes de tela usam esse Connection e automaticamente todos
FG> usam a mesma IBTransaction.

FG> 1. Sempre que dou um commit, preciso colocar um "commitretaining" porque
FG> senão derruba a transação e praticamente a conexão.
FG> Essa é a recomendação dos Srs ?

FG> 2. As Querys que fazem uma consulta simples pra mim. Qualquer consulta. Não
FG> fazem commit, mas a propriedade "Autocommit" está true.

FG> 3. Quando preciso colocar operação em transação, tipo , ao importar um
FG> arquivo grande e fazer várias alterações que só devem valer se tudo
FG> funcionar no final.
FG> Assim eu não faço CommitRetaining até o fim do meu trabalho. Se funcionar,
FG> faço CommitRetaining, se der algum erro no meio, faço RollbackRetaining.

FG> Qual a sugestão dos srs pra melhorar isso ?




FG> 2013/4/8 Luiz Carlos <lcarlos2000 em bol.com.br>

>> Gladiston, eu uso o IBX que não tem esta opção.
>>
>> Luiz Carlos
>>
>>   ----- Original Message -----
>>   From: Gladiston Santana
>>   To: FireBase
>>   Sent: Monday, April 08, 2013 9:37 AM
>>   Subject: Re: [firebase-br] Transações com consultas
>>
>>
>>   Creio que o unico problema em compartilhar a mesma sessão de transação é
>>   que o commit de um insert/update/delete afetará também as consultas, o
>> que
>>   pode atrapalhar componentes como dbgrid e afins que não são capazes de
>>   reposicionar a si proprio depois que perde a posição do cursor.
>>   Se voce usa o IBO, há uma propriedade acho que no IBQuery  chamada de
>>   CommitAction, se mudar para caRefresh, o proprio IBO ao receber um commit
>>   vai "commitar" fisicamente, mas não perderá os cursores em seus
>> componentes
>>   dataware.
>>
>>
>>   Gladiston Santana
>>   Departamento de TI
>>   Grupo Vidy
>>   Tel (11) 4787-3122 ramal 228
>>   Rod. Régis Bittencourt 3360 - Km 272,5
>>   Taboão da Serra - SP - CEP: 06793-000
>>   Visite nosso site: www.vidy.com.br
>>   Visite também : www.expolabor.com.br
>>
>>
>>
FG> ______________________________________________
FG> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
FG> Para saber como gerenciar/excluir seu cadastro na lista, use:
FG> http://www.firebase.com.br/fb/artigo.php?id=1107
FG> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista