[firebase-br] MDO funciona com GDS32.DLL????

Carlos Vitorino vitorino em ctvoicer.com.br
Qui Dez 23 17:13:45 -03 2004


Foi ai q eu vi a discussão era mais embaixo... literalmente

:-)


----- Original Message ----- 
From: "Francisco Thiago de Almeida" <jeandeadlucky em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Thursday, December 23, 2004 2:56 PM
Subject: Re: Re: Re: Re: Re: [firebase-br] MDO funciona com GDS32.DLL????


> Mas Daniel o ponto mais importante da mensagem do Jean você esqueceu de 
> ler:
>
>>> o problema é q vc está olhando a coisa a nível de programação final e eu 
>>> estou olhando a nível de componente
>
> Quando ele está falando do tratamento interno que o programa está dando ao 
> erro sacou? Ele não está dizendo que a forma do Try Commit Excep Rollback 
> é errada.
>
>
> ----- Original Message ----- 
> From: "Daniel / Tecnobyte" <temp em tecnobyte.com.br>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Thursday, December 23, 2004 3:44 PM
> Subject: Re: Re: Re: Re: Re: [firebase-br] MDO funciona com GDS32.DLL????
>
>
>> Errado de novo, até no quisito em ler sobre transações, já li e muito, 
>> mas
> é
>> claro q sempre devemos estar abertos a aprender, mas vamos lá.
>> Se vc começou uma transação e não "commitou" ou não deu um "rollback"
> nela,
>> ela ficaria no limbo e sendo assim o processo é de não concretizar a
>> transação, ou seja, a não confirmação dos dados.
>> Eu testei com o Rollback do jeito q vc sujeriou para ver como se
> comportava
>> nesta situação e fez extamente do mesmo jeito, dai testei com o IBX e ele
> se
>> portou da maneira correta (msm sem o rollback no except), ou seja, não
>> comitou a primeira inserção, pois o raciocínio é como falei 
>> anteriormente.
> O
>> problema é q vc está olhando a coisa a nível de programação final e eu
> estou
>> olhando a nível de componente (obrigado meu amigo Thiago), por isso vc 
>> não
>> está me compreendendo, agora se quer compreender eu te faço a msm
>> recomendação q vc me fez, leia bastante sobre como as coisas acontecem 
>> nos
>> bastidores q vc vai entender ;)
>> t+
>>
>> Jean Richard Lima
>> Analista de Sistema
>
> Até certo ponto eu concordo com sua explicação, mas observe que:
>
> 1. Se você usar o mesmo componente MDOTransaction em outros pontos de seu
> programa, fazendo desta forma sua (sem rollback) você corre o risco de
> posteriormente executar um commit em outra rotina (ou o MDO fazer isto
> automaticamente dependendo de alguma configuração), o que fatalmente
> confirmaria a pendência deixada na rotina anterior.
>
> 2. Bancos de dados (incluindo o Firebird) geralmente se apoiam no 
> princípio
> de que toda transação deve ser confirmada ou cancelada. Naturalmente 
> existem
> mecanismos para limpar transações deixadas sem conclusão (sem commit e sem
> rollback), mas não acredito que seja recomendável deixar transações desta
> forma. Entendo que este recurso existe para corrigir falhas que
> eventualmente possam ocorrer devido a problemas de rede, etc e tal.
>
> Meu ponto de vista (e de muitos outros) é que uma transação deve ser
> processada assim:
>
> 1. Iniciar transação.
> 2. Executa comandos SQL.
> 3. Se não ocorreu nenhum erro, então confirme a transação.
> 4. Se ocorreu algum erro, então cancele a transação.
>
> Em Delphi isto seria:
>
> IniciaTransacao;
> try
>  ExecutaSQL;
>  ConfirmaTransacao;
> except
>  CancelaTransacao;
>  raise;
> end;
>
> Atenciosamente.
>
> Daniel P. Guimarães
> Tecnobyte Informática
> www.tecnobyte.com.br
>
>
> ______________________________________________
> 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
>
>
> -- 
> No virus found in this incoming message.
> Checked by AVG Anti-Virus.
> Version: 7.0.298 / Virus Database: 265.6.4 - Release Date: 22/12/2004
>
>
>
>
> -- 
> No virus found in this outgoing message.
> Checked by AVG Anti-Virus.
> Version: 7.0.298 / Virus Database: 265.6.4 - Release Date: 22/12/2004
>
>
> ______________________________________________
> 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 





Mais detalhes sobre a lista de discussão lista