O controle de concorrência entre transações de um banco de dados, pode ser feita por um SGBD (Sistema de Gerenciamento de Banco de Dados), o qual se utiliza de algumas propriedades, conhecidas pelo acrônimo ACID (Atomicidade, Consistência, Isolamento e Durabilidade). Qual definição é associada ao princípio de Atomicidade?
- A)A transação dever ser executada do início ao fim, sem haver a interferência de outras transações durante sua execução.
Errada, porque fala de ausência de interferência de outras transações, o que se relaciona com Isolamento, não com Atomicidade.
- B)A transação dever ser realizada por completo ou não deve ser realizada, se houver uma falha no meio do processo, os efeitos parciais no banco de dados, causados por esta transação, devem ser desfeitos.
Certa, porque descreve o princípio do tudo ou nada: a transação ou acontece por inteiro, ou seus efeitos parciais são desfeitos.
- C)Mesmo sendo executadas várias transações com o bando de dados, de maneira simultânea, cada uma delas deverá ser executada isoladamente, ou seja, uma transação não poderá interferir em outra.
Errada, porque define a execução isolada entre transações simultâneas, que é exatamente a ideia de Isolamento.
- D)As mudanças feitas no banco de dados devem permanecer no banco.
Errada, porque trata da permanência das alterações no banco após a confirmação, característica da Durabilidade.
Gabarito: B
Em concorrência de transações, o SGBD tenta evitar que uma transação atrapalhe a outra e, ao mesmo tempo, preservar as regras do ACID. Entre essas regras, a Atomicidade é a ideia de "tudo ou nada": a transação precisa ser concluída por inteiro, e se algo falhar no caminho, o sistema desfaz o que já foi feito por ela. Pense assim: não existe "meio pagamento" ou "meia transferência". Se a operação não terminou com sucesso, o banco de dados volta ao estado anterior por meio de rollback. Isso evita que fiquem sobras parciais e inconsistentes no banco. Por isso, o gabarito é a letra B. Ela descreve exatamente a Atomicidade ao dizer que a transação deve ser realizada por completo ou não ser realizada, com desfazimento dos efeitos parciais em caso de falha. Essa é a definição clássica ensinada em doutrina de bancos de dados e aparece junto do conceito de transação completa e indivisível. Já não confunda com Isolamento, que trata da execução sem interferência de outras transações, e com Durabilidade, que garante que, depois de confirmada, a mudança permanece salva. A banca gosta muito de trocar esses conceitos para ver se você está afiado.