Em banco de dados, uma transação é composta por diversas operações sobre os dados, como leitura, alteração, inserção e remoção. Contudo, a transação é percebida como uma operação lógica única sobre os dados. Com isso, para garantir a consistência de um banco de dados, as transações devem satisfazer algumas propriedades, como: (i) todas as operações da transação são executadas em caso de sucesso; ou (ii) em caso de falhas, todas as operações são desfeitas e o banco de dados deve voltar ao mesmo estado em que estava antes do início da transação. A propriedade de uma transação de banco de dados descrita é a:
- A)atomicidade;
Correta, porque atomicidade significa que a transação é executada por completo ou desfeita por completo em caso de falha.
- B)consistência;
Errada, porque consistência se refere a manter as regras e restrições do banco antes e depois da transação, não ao "tudo ou nada".
- C)isolamento;
Errada, porque isolamento trata de transações concorrentes não interferirem umas nas outras durante a execução.
- D)durabilidade;
Errada, porque durabilidade garante que, após o commit, os efeitos da transação persistam mesmo com falhas no sistema.
- E)redundância.
Errada, porque redundância não é propriedade ACID de transações e não descreve esse comportamento de rollback.
Gabarito: A
Em transações de banco de dados, o sistema trata um conjunto de operações como se fosse uma única ação lógica. Isso é importante porque, na vida real do banco, não adianta "meio pagamento", "meia transferência" ou "meia atualização". Ou a operação acontece por inteiro, ou não vale nada. A propriedade descrita no enunciado é a que garante exatamente isso: se tudo der certo, a transação é concluída; se houver falha, tudo o que foi feito é desfeito e o banco volta ao estado anterior. Essa é a ideia clássica de atomicidade, como nos conceitos das propriedades ACID. As propriedades ACID são um resumo muito cobrado em prova: Atomicidade, Consistência, Isolamento e Durabilidade. A banca costuma misturar os nomes para ver se voce reconhece a função de cada uma. Aqui, o foco está na ideia de "tudo ou nada", então não há dúvida: o gabarito é a alternativa A. Em termos doutrinários, atomicidade significa que a transação é indivisível do ponto de vista lógico. Se alguma parte falhar, o sistema deve fazer rollback para preservar a integridade dos dados.