Ciência da Computação Banco de Dados

O padrão SQL define diversos níveis de isolamento de transações. Dentre os níveis permitidos, encontra-se o nível de Leitura Confirmada (read committed) que é implementado atualmente por vários Sistemas Gerenciadores de Bancos de Dados (SGBDs). Em um SGBD operando em tal nível de isolamento, tentam-se executar duas transações (T1 e T2). Observe na tabela abaixo o registro do escalonamento previsto para os comandos dessas transações, em que A representa um determinado registro.

 

Considerando os dados registrados, conclui-se que

  • A. a transação T1 não poderá executar o comando Rollback, pois a transação T2 executou o comando Commit.
  • B. a transação T1 terá dois resultados distintos (nos tempos t2 e t9) para o mesmo comando de consulta ao registro A.
  • C. o valor final do registro A, após a execução de ambas as transações T1 e T2, será igual ao valor inicial reduzido de 20.
  • D. o registro A terá o mesmo valor que tinha antes do início de ambas as transações, devido ao comando Rollback executado por T1, ao final da execução das transações T1 e T2.
  • E. esse escalonamento não pode ocorrer, pois o nível de isolamento utilizado impede a execução de duas transações em simultâneo, sendo que a transação T2 somente será executada pelo SGBD após o término da transação T1.