Pessimistic Locking
BEGIN;
SELECT * FROM accounts WHERE id=1 FOR UPDATE;
-- 이후 UPDATE 안전
COMMIT;충돌 빈번한 환경에 유리하지만 락 경합 주의.
트랜잭션 시작 시 행 락을 선점. SELECT FOR UPDATE.
BEGIN;
SELECT * FROM accounts WHERE id=1 FOR UPDATE;
-- 이후 UPDATE 안전
COMMIT;충돌 빈번한 환경에 유리하지만 락 경합 주의.