Fórum SqlConnection transaction MySql #374331

31/08/2009

0

Pessoal...
Estava eu testando aqui usando

try
  dmCadastroF.sqlConn.StartTransaction(transacao);
...
...
...
...
abort; (teste para forçar um exception)
...
...
except
  dmCadastroF.sqlConn.Rollback( transacao);
  exit;
end;
  showmessage(´Lançamentos gerado com sucesso!´);


Mas sempre gerava os dados...
Debugando ele realmente passar pelo Rollback, mas aparentemente não o faz.

Fui dar uma olhada no Help do delphi que ja me ajudou milhares de vezes
Call StartTransaction to start a new transaction against a database server that supports transactions. (MySQL servers do not support transactions.)

Bom.. se isso for verdade como contornar isso.

Estou usando Delphi 7, DBExpress, MySql


Osocram

Osocram

Responder

Posts

31/08/2009

Emerson Nascimento

salvo engano, no momento do lançamento do Delphi 7 o MySQL estava na versão 3 ou 4 e essas versões não suportavam transações, bem como não suportavam várias características de SGDBR de verdade. Isso foi ´corrigido´ a partir da versão 5, portanto creio ser necessário obter um driver dbExpress para MySQL a partir do 5 e também o próprio MySQL a partir do 5.


Responder

Gostei + 0

31/08/2009

Osocram

Amigo Emerson
So p ver se entendi bem, se eu migrar este sistema para o D2007 usando o DBExpress e os drivers nativos q ele tem para MySql vai funcionar?
Aqui o MySql esta na versão 5.0.45


Responder

Gostei + 0

31/08/2009

Emerson Nascimento

isso mesmo. deve funcionar.


Responder

Gostei + 0

01/09/2009

Osocram

OK é provavel que eu migue o sistema nessa ou na prox semana da ja teremos uma resposta..

Obrigado Emerson.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar