Pular para o conteúdo principal

Questão de Banco de Dados — Transações (Locks, ACID, etc.) — Avança SP 2024

Banco de DadosTransações (Locks, ACID, etc.)
Código
qa630768
Banca
Avança SP
Órgão
CM Itapecerica Serra
Ano
2024
Cargo
Tec ( )
À medida que o número de usuários que acessam os dados aumenta, torna-se importante ter aplicativos que utilizem as transações de maneira eficaz.   Porque:   COMMITS garantem que as modificações na transação façam parte do banco de dados. No contexto do SQL Server, é correto concluir sobre as duas afirmativas acima:
  1. Aa primeira afirmativa é falsa, e a segunda verdadeira.
  2. Bambas as afirmativas são falsas.
  3. Ca primeira afirmativa é verdadeira, e a segunda falsa.
  4. DAmbas são verdadeiras, mas não estabelecem relação entre si.
  5. EAmbas são verdadeiras e a segunda é uma justificativa correta da primeira.
Revelar gabarito e comentário

GabaritoD — Ambas são verdadeiras, mas não estabelecem relação entre si.

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 banco de dados: COMMIT e a relação entre as afirmativas

Gabarito: letra D. Ambas as afirmativas são verdadeiras, mas a segunda não é uma justificativa da primeira. A primeira afirmativa trata da importância das transações para o acesso concorrente de dados, enquanto a segunda descreve o efeito do comando COMMIT, que torna permanentes as modificações da transação no banco de dados. São conceitos relacionados ao mesmo tema, mas a segunda não explica o porquê da primeira.

Uma transação em banco de dados é uma unidade lógica de trabalho que agrupa uma ou mais operações (leituras, inserções, alterações, exclusões) que devem ser executadas de forma atômica, consistente, isolada e durável — as propriedades ACID. A atomicidade garante que a transação seja executada por completo ou não tenha efeito algum; a consistência assegura que o banco passe de um estado válido para outro válido; o isolamento faz com que transações concorrentes não interfiram umas nas outras; e a durabilidade garante que, uma vez confirmada (COMMIT), as alterações sejam permanentes, mesmo em caso de falha do sistema.

O comando COMMIT é o responsável por finalizar a transação com sucesso, tornando definitivas todas as modificações realizadas durante a transação. Antes do COMMIT, as alterações são temporárias e podem ser desfeitas com um ROLLBACK. Após o COMMIT, as mudanças são gravadas de forma durável no banco de dados, cumprindo a propriedade de durabilidade do ACID.

A primeira afirmativa destaca a importância das transações em ambientes com muitos usuários acessando dados simultaneamente. Isso se relaciona diretamente com a propriedade de isolamento, que evita que transações concorrentes interfiram umas nas outras, garantindo a consistência dos dados. A segunda afirmativa, por sua vez, descreve o efeito do COMMIT, que é a confirmação das modificações da transação. Embora ambas sejam verdadeiras e pertençam ao contexto de transações, a segunda não é uma justificativa da primeira: o fato de o COMMIT tornar as modificações permanentes não explica por que é importante usar transações de forma eficaz quando há muitos usuários. A justificativa para a primeira afirmativa está na necessidade de isolamento e consistência em cenários de concorrência, não na durabilidade proporcionada pelo COMMIT.

A pegadinha desta questão está em confundir a relação de causa e consequência entre as afirmativas. O candidato pode ser levado a pensar que a segunda justifica a primeira, mas a relação correta é de complementaridade: ambas tratam de aspectos diferentes das transações. A primeira fala da necessidade de transações em cenários de concorrência; a segunda fala do efeito do COMMIT. Não há uma relação de justificativa entre elas.

1Atomicidade
Tudo ou nada
2Consistência
Estado válido → válido
3Isolamento
Concorrência sem interferência
4Durabilidade
COMMIT torna permanente
5COMMIT
Confirma a transação
Gravação durável
ROLLBACK desfaz
Transações (ACID)
LEVELsoulevel.com.br
Transações (ACID): Atomicidade (Tudo ou nada); Consistência (Estado válido → válido); Isolamento (Concorrência sem interferência); Durabilidade (COMMIT torna permanente); COMMIT (Confirma a transação, Gravação durável, ROLLBACK desfaz)

Alternativa A — ❌ Incorreta

Afirma que a primeira afirmativa é falsa e a segunda verdadeira. A primeira afirmativa é verdadeira, pois em ambientes com muitos usuários acessando dados, o uso eficaz de transações é fundamental para garantir a consistência e o isolamento dos dados. A segunda também é verdadeira, pois o COMMIT de fato torna as modificações permanentes. Portanto, a alternativa está incorreta ao classificar a primeira como falsa.

Alternativa B — ❌ Incorreta

Afirma que ambas as afirmativas são falsas. Isso está incorreto, pois tanto a primeira quanto a segunda afirmativas são verdadeiras. A primeira reflete a importância das transações em cenários de concorrência, e a segunda descreve corretamente o efeito do COMMIT.

Alternativa C — ❌ Incorreta

Afirma que a primeira afirmativa é verdadeira e a segunda falsa. A primeira é verdadeira, mas a segunda também é verdadeira: o COMMIT garante que as modificações da transação façam parte do banco de dados, tornando-as permanentes. Portanto, a alternativa está incorreta ao classificar a segunda como falsa.

Alternativa D — ✅ Correta ⟵ GABARITO

Ambas as afirmativas são verdadeiras, mas não estabelecem relação entre si. A primeira afirmativa destaca a importância das transações em ambientes com muitos usuários, o que se relaciona com as propriedades de isolamento e consistência. A segunda afirmativa descreve o efeito do COMMIT, que é a confirmação das modificações da transação, relacionada à durabilidade. São conceitos verdadeiros e complementares, mas a segunda não é uma justificativa da primeira, pois a razão para usar transações de forma eficaz em cenários de concorrência não é o efeito do COMMIT, mas sim a necessidade de isolamento e consistência.

Alternativa E — ❌ Incorreta

Afirma que ambas são verdadeiras e a segunda é uma justificativa correta da primeira. Embora ambas sejam verdadeiras, a segunda não é uma justificativa da primeira. A primeira afirmativa fala da importância das transações em cenários de concorrência, enquanto a segunda fala do efeito do COMMIT. A justificativa para a primeira está na necessidade de isolamento e consistência, não na durabilidade proporcionada pelo COMMIT. Portanto, a relação de justificativa não existe.

Gabarito: letra D

Link permanente: /questoes/qa630768