Transações em Banco de Dados: ACID e Níveis de Isolamento
Por que uma transferência bancária precisa de mais que dois UPDATE Mova R$ 50 de uma conta para outra e a versão naive são duas instruções: subtrair da conta A, somar à conta B. Execute-as separadamente e, se o processo cair ou a conexão cair entre as duas, o dinheiro desaparece de A e nunca chega a B. O banco de dados fez exatamente o que foi pedido, duas vezes. O negócio perdeu os R$ 50 do mesmo jeito. ...