Uma dúvida. Construi um pequeno aplicativo CRUD na empresa em que trabalho para auxiliar nos cadastros de uma agenda de contatos, muitos simples!
E ele está funcionando perfeitamente, porém aconteceu uma situação inusitada que eu não previ e que pode acontecer novamente a qualquer momento. Ao inserir um novo contato ele grava algumas informações em tabelas separadas e nesse exato momento caiu a internet e uma parte da informação gravou em uma tabela e a outra não. Consequentemente tive problemas e precisei apagar o registro direto no BD. Pesquisando eu não achei nada, pelo menos onde eu li…
Qual seria a forma de ler se um registro que depende de outro registro foi salvo ou não no banco… e se não foi como voltar ou interromper a operação toda e não salvar nada!?
Pra evitar esse problema você deve usar bancos de dados que permitem transação ACID.
Ou faz tudo que está dentro da transação ou não faz nada.
Isso que aconteceu no seu processo é inadimissivel e pra isso criaram o conceito de transação
J-Menezes realmente o que aconteceu é inadmissível, estou estudando e entendendo o conceito informado por você dentro do postgresql. Mais uma vez agradeço o conselho, como sempre!