Questão de Arquitetura de Software — Banco de Dados — Fundação FAPEC 2021
Arquitetura de Software›Banco de Dados
Código
qq634575
Banca
Fundação FAPEC
Órgão
PC-MS
Ano
2021
Nível
Superior
Cargo
FAPEC - - Perito Criminal - Área 01 (Análise de Sistemas, Engenharia da Computação e Ciências da Computação)
Transações são mecanismos importantes para o correto funcionamento de bancos de dados. Considerando um SGBD com suporte a transações, assinale a afirmativa correta.
AQualquer comando que modifique uma tabela deverá sempre ser sucedido explicitamente por um comando commit.
BE possível executar um conjunto de diversos comandos SQL de forma atômica apenas se o SGBD estiver instalado em um sistema multicore ou em um cluster.
CEspera-se que o SGBD descarte ou realize o rollback de transações incompletas devido a uma reinicialização repentina do sistema (hard reboot).
DApós realizar o commit de uma transação, é possível revertê-la através de um rollback.
EOs comandos SQL rollback e revert são equivalentes e produzem o mesmo efeito.
Revelar gabarito e comentário▾
GabaritoC — Espera-se que o SGBD descarte ou realize o rollback de transações incompletas devido a uma reinicialização repentina do sistema (hard reboot).
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Transações em SGBD
Gabarito: letra C. Em SGBDs, transações são unidades lógicas de trabalho com propriedades ACID. Em caso de reinicialização repentina do sistema (hard reboot), o SGBD deve garantir atomicidade descartando ou realizando rollback de transações incompletas (não confirmadas). Isso é um comportamento padrão de recuperação após falhas.
1Início da transação
2Execução de comandos
3Falha (hard reboot)
4Rollback automático
5Estado consistente
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que qualquer comando de modificação deve ser sucedido explicitamente por commit. No entanto, muitos SGBDs operam em modo auto-commit, onde cada comando é confirmado automaticamente. Além disso, comandos podem ser executados dentro de uma transação explícita e não exigem commit imediato.
Alternativa B — ❌ Incorreta
A atomicidade de transações não depende do hardware (multicore ou cluster). É uma propriedade do gerenciamento de transações do SGBD, independente da arquitetura de processamento.
Alternativa C — ✅ Correta ⟵ GABARITO
Após uma reinicialização repentina (hard reboot), transações que estavam em andamento e não foram confirmadas (committed) devem ser desfeitas (rollback) ou descartadas, garantindo que o banco de dados retorne a um estado consistente. Esse é um princípio fundamental de recuperação de falhas.
Alternativa D — ❌ Incorreta
Após o commit, a transação é permanente. O rollback só pode ser aplicado a transações ainda não confirmadas. Tentar reverter uma transação já commitada viola a durabilidade (propriedade D do ACID).
Alternativa E — ❌ Incorreta
Não existe o comando SQL "revert". O comando correto para desfazer alterações não confirmadas é ROLLBACK. Portanto, não são equivalentes.