Questão nº 69
Questão de Tecnologia da Informação · CESGRANRIO Transpetro PSP-RH-2018.1 (nº 69)
O padrão ANSI/ISO SQL define três níveis de isolamento que permitem a ocorrência de violações do tipo leitura fantasma.
Esses três níveis são
- AREAD UNCOMMITTED, READ COMMITTED e REPEATABLE READ (alternativa correta)
- BREAD UNCOMMITTED, READ COMMITTED e SERIALIZABLE
- CREAD UNCOMMITTED, REPEATABLE READ e SERIALIZABLE
- DREAD COMMITTED, REPEATABLE READ e SNAPSHOT
- EREPEATABLE READ, SNAPSHOT e SERIALIZABLE
Resposta comentada
Gabarito Alternativa A
O conceito-chave é que o padrão SQL define quatro níveis de isolamento (não três), e a questão pede justamente os três que ainda permitem a violação chamada leitura fantasma (quando uma consulta retorna linhas novas inseridas por outra transação durante a execução). O único nível que impede a leitura fantasma é o SERIALIZABLE, então os três que permitem são os mais "fracos" em ordem crescente de isolamento: READ UNCOMMITTED, READ COMMITTED e REPEATABLE READ.
- (A) Correta:
READ UNCOMMITTED,READ COMMITTEDeREPEATABLE READsão exatamente os três níveis que permitem leitura fantasma, pois apenas oSERIALIZABLEbloqueia esse fenômeno no padrão ANSI/ISO. - (B) Incorreta: Inclui
SERIALIZABLE, que é justamente o nível que previne a leitura fantasma, então não pode estar na lista dos que permitem. - (C) Incorreta: Troca
READ COMMITTEDporSERIALIZABLE, cometendo o mesmo erro da B: oSERIALIZABLEnão permite fantasma. - (D) Incorreta:
SNAPSHOTnão é um nível do padrão ANSI/ISO SQL (é uma extensão de alguns bancos, como SQL Server), e a lista ainda excluiREAD UNCOMMITTED. - (E) Incorreta: Repete o erro de incluir
SERIALIZABLEeSNAPSHOT, ambos fora do trio clássico do padrão que permite fantasma.
Armadilha da banca na alternativa B: ela é a mais tentadora porque lista três níveis "reais" e em ordem crescente de isolamento, mas a banca conta que você decore que SERIALIZABLE é o único que elimina a leitura fantasma — então ele nunca pode aparecer numa lista de níveis que permitem essa violação.
Fonte: CESGRANRIO Transpetro PSP-RH-2018.1 Analista de Sistemas Júnior - Infraestrutura. Reproduzida para fins de estudo.