Fórum Transação. Preciso saber o que esta acontecendo com o banco. #45399

07/07/2004

0

(1)
Preciso saber o que acontece com o banco de dados no Firebird na seguinte situação:
- É iniciado uma transação e está sendo feito várias inclusões. Aí, o sistema, por exemplo, trava e é finalizado. O que acontece no banco? É dado automaticamente um rollback e é finalizado a transação ou a transação fica aberta?

(2)
Outra dúvida:
Quais os problemas que eu posso ter deixando uma transação aberta por bastante tempo? (Esse bastante é + 3 a 10 min, o terminal do sistema pode sofrer com bastante queda de sistema/energia).

(3)
Essas dúvidas é porque estou fazendo um sistema de vendas da seguinte maneira:
- Inicio uma transação
- O usuário insere os itens da venda
- Finalizo a transação

Disseram que eu poderia ter problemas (corromper o banco ou perda de dados do banco) por estar deixando a transação por um tempo considerável aberta, uma vez q o sistema pode ter quedas (sistema finalizado indevidamente, computador travar, queda de energia).
Qual seria a melhor maneira de trabalhar?


Tecsoftware

Tecsoftware

Responder

Posts

08/07/2004

Gandalf.nho

Se o sistema travar ou for finalizado a transação não é completada e causa um efeito igual ao de um rollback (ou seja, nada é alterado).
O ideal é deixar a transação o menor tempo aberto para diminuir o tráfego na rede e as chances de problemas, mas se o tempo da transação depende de entrada de dados por parte do usário não há muito o que fazer, exceto se usar ClientDataSet ou similar, onde a transação permanece aberta só para puxar os dados e depois gravar as alterações.


Responder

Gostei + 0

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

Aceitar