Fórum Desfazer Operações #194467
12/11/2003
0
Gostaria de saber como faço para desfazer várias operações efetuadas em um ou mais bancos de dados.
Por exemplo: inclui e excluir registros em algumas tabelas, só que antes de finalizar toda operação ocorreu algum problemas que não permitiu que todo o processo fosse realizado. Assim preciso retornar todas as modificações que foram feitas dentro da rotina.
Por exemplo: inclui e excluir registros em algumas tabelas, só que antes de finalizar toda operação ocorreu algum problemas que não permitiu que todo o processo fosse realizado. Assim preciso retornar todas as modificações que foram feitas dentro da rotina.
Drogao
Curtir tópico
+ 0
Responder
Posts
12/11/2003
Brnz
Usando componentes Database use o comando StartTransaction...
execute as funções... se ocorrer corretamente use o comando Commit
se não... Rollback
execute as funções... se ocorrer corretamente use o comando Commit
se não... Rollback
Responder
Gostei + 0
12/11/2003
Fava
Isso vai depender do banco de dados que você está utilizando, se for interbase/mysql/db2/oracle (bancos relacionais) isso é muito simples, basta você trabalhar com transações. Inicie uma transação (start transaction) e realize todas operações (pode ter mais que uma tabela envolvida) e finalize com um COMMIT se der tudo certo ou com um ROLLBACK se der algo errado.
Procure algum material sobre transações, esse é o caminho para resolver este problema.
http://www.delphi.eti.br/delphi/apostilas/banco_de_dados/Transac¬20.zip
Procure algum material sobre transações, esse é o caminho para resolver este problema.
http://www.delphi.eti.br/delphi/apostilas/banco_de_dados/Transac¬20.zip
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)