Sobes.tech
Middle

Šta su nivoi izolacije transakcija? Koje poznajete?

sobes.tech АИ

Одговор од АИ

Нивои изолације трансакција одређују у којој мери једна трансакција може да види промене направљене од стране других паралелних трансакција и помажу у контролисању проблема са конкурентним приступом подацима. Главни нивои изолације су:

  • READ UNCOMMITTED — најнижи ниво, трансакција може да види неусаглашене промене других трансакција (загадно читање).
  • READ COMMITTED — трансакција види само већ потврђене промене, спречава заграђено читање.
  • REPEATABLE READ — гарантује да ће поновно читање истих података у оквиру трансакције дати исти резултат, спречава непоновљиво читање.
  • SERIALIZABLE — најстрожи ниво, трансакције се извршавају као да су секвенцијалне, спречавају фантомско читање.

У Јави, при раду са базама података преко JDBC или JPA, може се поставити ниво изолације трансакције, на пример:

connection.setTransactionIsolation(Connection.TRANSACTION_REPEATABLE_READ);