Я прочитал около 4 уровней изоляции:
Isolation Level Dirty Read Nonrepeatable Read Phantom Read
READ UNCOMMITTED Permitted Permitted Permitted
READ COMMITTED -- Permitted Permitted
REPEATABLE READ -- -- Permitted
SERIALIZABLE -- -- --
Я хочу понять, что блокировка каждой изоляции транзакции занимает таблицу
READ UNCOMMITTED - no lock on table
READ COMMITTED - lock on committed data
REPEATABLE READ - lock on block of sql(which is selected by using select query)
SERIALIZABLE - lock on full table(on which Select query is fired)
ниже представлены три явления, которые могут возникать при изоляции транзакций
Dirty Read - без блокировки
Невосстановимое чтение - не грязное чтение как блокировка зафиксированных данных
Phantom Прочитайте - заблокируйте блок sql (который выбран с помощью запроса выбора)
Я хочу понять, где мы определяем эти уровни изоляции: только на уровне jdbc/hibernate или в DB также
PS: Я прошел через ссылки в Уровнях изоляции в оракуле, но они выглядят неуклюжими и говорят о специфичных для базы данных