Commit / Rollback

Olá

Eu tenho duas classes que efetuam atualização em duas tabelas distintas.
Estas duas classes são instanciadas por uma outra (principal). Qual a melhor forma de garantir a integridade das tabelas, visto que tenho uma conexão em cada uma das classes e preciso que caso a segunda atualização não tenha sucesso, eu consiga fazer o rollback da primeira.

Marcos

Olá Prime01,

bom, uma coisa que vc poderia fazer, é tratar esses eventos com trigger direto no banco de dados, algo como (depende do BD)

after insert on tabela
  if (raise_exception(sua_escessao))
     rollback transaction;

alguma coisa dess tipo =)

bom outra coisa vc poderia fazer diretamente na sua aplicação, que é trabalhar com flags, ou seja, a cada coisa que vc faz vc seta uma flag dizendo que deu certo ao final vc trata essas flags e ve o que deu errado, e trata a transação, dando rollback ou commit;

bom, isso é soh uma idéia!

Até mais!

que tal try catch??? deoendendo do caso funciona.

Se os acessos estiverem em threads diferentes, pode ser utilizado o mecanismo wait/notify.