BEGIN; 이 프로시저의 시작인줄 알았는데..
트랜잭션의 시작이었구나..
rollback을 위해서는 savepoint를 만들어 놔야하고
문제가 없으면 commit; 으로 transaction을 완료하면 된다.
BEGIN;
UPDATE accounts SET balance = balance - 100.00
WHERE name = 'Alice';
SAVEPOINT my_savepoint;
UPDATE accounts SET balance = balance + 100.00
WHERE name = 'Bob';
-- oops ... forget that and use Wally's account
ROLLBACK TO my_savepoint;
UPDATE accounts SET balance = balance + 100.00
WHERE name = 'Wally';
COMMIT;
[링크 : https://www.postgresql.org/docs/8.3/tutorial-transactions.html]
근데.. 이렇게 하면 WAL 로 미친듯이 써질려나?
'프로그램 사용 > postgreSQL' 카테고리의 다른 글
postgresql select having (0) | 2019.09.24 |
---|---|
postgresql select from , (cross join) (0) | 2019.09.24 |
sql 문 계산하기 (0) | 2019.09.24 |
string_agg() + COALESCE() + DISTINCT (0) | 2019.09.23 |
join where와 on (0) | 2019.09.18 |