여러 저장점과 롤백

PostgreSQL에서의 트랜잭션과 오류 처리

Jason Myers

Principal Engineer

여러 저장점

BEGIN TRANSACTION;

UPDATE inventory SET quantity = quantity - 1 WHERE name in ('flour', 'sugar');

SAVEPOINT inventory_step;

INSERT baking_list SET quantity=12 WHERE name='Torun';

SAVEPOINT queuing_step;

UPDATE cookies SET quantity = 12 WHERE name = 'Torun';
PostgreSQL에서의 트랜잭션과 오류 처리

저장점 이름 중복

  • 같은 트랜잭션에서 이전 저장점과 동일한 이름의 새 SAVEPOINT는 해당 저장점을 덮어쓰거나 해제하지 않고 가립니다.
  • 한 트랜잭션 안에서는 이름 재사용을 피하십시오.
PostgreSQL에서의 트랜잭션과 오류 처리

저장점 이름 중복 예시

BEGIN TRANSACTION;

UPDATE inventory SET quantity = quantity - 1 WHERE name in ('flour', 'sugar');

SAVEPOINT oops;

INSERT baking_list SET quantity=12 WHERE name='Torun';

SAVEPOINT oops;

UPDATE cookies SET quantity = 12 WHERE name = 'Torun';
PostgreSQL에서의 트랜잭션과 오류 처리

실습해 봅시다!

PostgreSQL에서의 트랜잭션과 오류 처리

Preparing Video For Download...