Sobes.tech
Middle

O que são os níveis de isolamento de transações? Quais conhece?

sobes.tech IA

Resposta da IA

Os níveis de isolamento de transações determinam até que ponto uma transação pode ver as alterações feitas por outras transações paralelas, ajudando a controlar problemas de acesso concorrente aos dados. Os principais níveis de isolamento:

  • READ UNCOMMITTED — o mais baixo nível de isolamento, uma transação pode ver alterações não confirmadas de outras transações (leitura suja).
  • READ COMMITTED — a transação vê apenas alterações já confirmadas, prevenindo leitura suja.
  • REPEATABLE READ — garante que a leitura repetida dos mesmos dados dentro de uma transação produza o mesmo resultado, prevenindo leituras não repetíveis.
  • SERIALIZABLE — o nível mais rigoroso, as transações são executadas como se fossem sequenciais, prevenindo leituras fantasmas.

Em Java, ao trabalhar com bancos de dados via JDBC ou JPA, é possível definir o nível de isolamento da transação, por exemplo:

connection.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);