COMMIT TRANS

LUCASVA 29/03/2004 07:24:43
#17402
Eu conversei com um colega que me comentou sobre a utilização de comandos como commit trans, begin trans e se não me engano rollback? mas ainda ficaram muitas duvidas sobre a utilização destes comandos alguém saberia me informar algo mais sobre o assunto?
USUARIO.EXCLUIDOS 29/03/2004 11:30:38
#17415
Resposta escolhida
Com o begintrans, commit trans e rollback vc garante que uma grande alteração de dados (em várias tabelas diferentes) só seja completada após todas as alterações serem feitas com sucesso. Se alguma falhar vc desfaz todas as alterações com o rollback, se todas funcionarem vc confirmar com o commit trans.

Isso é muito bom pq caso por exemplo haja uma falta de energia no meio de uma transação vc não ficará com a operação pela metade.

Exemplificando:

Caso vc esteja emitindo uma nota fiscal:

Você grava a emissão da nota fiscal, dá baixa no estoque, lança o contas a receber e lança a operação no histórico do cliente por exemplo.

Caso vc esteja trabalhando com transações (antes de começas as operação vc dá um begin trans) e depois de gravar a emissão da nota e a baixa no estoque faltar energia, nada terá sido efetivamente gravado no Banco não causando transtornos. Caso, tb, exista alguma razão para cancelar no meio da operação, um simples rollback desfaz todas as alterações feitas. Então, no fim da operação após a gravação do histórico vc dá um commit trans e confirma tudo gravando efetivamente no DB.

Abraços,
Tópico encerrado , respostas não são mais permitidas