Questão de Banco de Dados — Gerência de Transações — FGV 2025
Banco de Dados›Gerência de Transações
Código
fg104516
Banca
FGV
Órgão
AL-AM
Ano
2025
Nível
Superior
Cargo
Analista Legislativo - Analista de Redes de Comunicação de Dados
No SQL Server, para resolver problemas de concorrência em ambiente de alta carga transacional, um DBA precisa escolher o nível de isolamento adequado.O nível que permite leitura de dados não confirmados de outras transações, potencialmente causando dirty reads, é:
AREAD UNCOMMITTED.
BREAD COMMITTED.
CREPEATABLE READ.
DSERIALIZABLE.
ESNAPSHOT.
Revelar gabarito e comentário▾
GabaritoA — READ UNCOMMITTED.
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”.
Níveis de isolamento no SQL Server
Gabarito: letra A — READ UNCOMMITTED. O nível de isolamento READ UNCOMMITTED permite que uma transação leia dados ainda não confirmados (não commitados) por outras transações, o que pode causar o fenômeno de dirty read (leitura suja). Esse é o nível mais baixo de isolamento, priorizando performance sobre consistência.
A banca cobra o conhecimento dos níveis de isolamento definidos pelo padrão SQL e implementados no SQL Server. A tabela a seguir resume os fenômenos permitidos em cada nível:
Nível de Isolamento
Dirty Read
Non-repeatable Read
Phantom Read
READ UNCOMMITTED
✅ (permitido)
✅
✅
READ COMMITTED
❌ (impedido)
✅
✅
REPEATABLE READ
❌
❌
✅
SERIALIZABLE
❌
❌
❌
Alternativa A — ✅ Correta ⟵ GABARITO
READ UNCOMMITTED é o único nível que não impede leituras sujas, permitindo que uma transação leia dados não confirmados. É útil em cenários onde a precisão absoluta não é crítica e a performance é priorizada.
Alternativa B — ❌ Incorreta
READ COMMITTED impede dirty reads, garantindo que a transação leia apenas dados confirmados. É o padrão no SQL Server.
Alternativa C — ❌ Incorreta
REPEATABLE READ impede dirty reads e non-repeatable reads, mas permite phantom reads.
Alternativa D — ❌ Incorreta
SERIALIZABLE impede todos os três fenômenos, fornecendo o mais alto nível de isolamento.
Alternativa E — ❌ Incorreta
SNAPSHOT é um nível de isolamento baseado em versões de linha que também impede dirty reads, mas pode ter outros comportamentos. Não permite dirty reads.
PEGA ESSA DICA!
Memorize a tabela de níveis de isolamento e os fenômenos que cada um permite. A banca adora perguntar qual nível permite dirty read – a resposta é sempre READ UNCOMMITTED.