Примеры.
Версия 1.12 от Alexandr Fokin на 2023/01/09 13:31
Необходимый уровень изоляции | Запрос | Комментарий |
READ COMMITTED | BEGIN; UPDATE accounts SET balance = balance + @payment WHERE acctnum = @account1 UPDATE accounts SET balance = balance - @payment WHERE acctnum = @account2 COMMIT; |
|
REPEATABLE READ | BEGIN; if (SELECT balance FROM accounts where acctnum = @account2) < @payment RAISE EXCEPTION '' END IF UPDATE accounts SET balance = balance + @payment WHERE acctnum = @account1 UPDATE accounts SET balance = balance - @payment WHERE acctnum = @account2 COMMIT; |
|