ミスへの対処

PostgreSQL におけるトランザクションとエラー処理

Jason Myers

Principal Engineer

ミスは起こる

誤って Biscuits を更新

UPDATE cookies SET quantity = 13 WHERE name = 'Biscuits';

Biscotti を更新するよう修正

UPDATE cookies SET quantity = 1 WHERE name = 'Biscuits';

UPDATE cookies SET quantity = 13 WHERE name = 'Biscotti';
PostgreSQL におけるトランザクションとエラー処理

ロールバックで取り消す

BEGIN TRANSACTION

UPDATE cookies SET quantity = 13 WHERE name = 'Biscuits';
ROLLBACK;
SELECT quantity FROM cookies where name = 'Biscuits';
13
PostgreSQL におけるトランザクションとエラー処理

複数文をロールバック

BEGIN TRANSACTION;

UPDATE cookies SET deliciousness = 111 where name = 'Cats Tongue';

UPDATE cookies SET deliciousness = 8 where name = 'Gingerbread';

ROLLBACK;
SELECT name, deliciousness FROM cookies where name in ('Cats Tongue', 'Gingerbread');
'Cats Tongue'  10
'Gingerbread'   9
PostgreSQL におけるトランザクションとエラー処理

演習に進みましょう

PostgreSQL におけるトランザクションとエラー処理

Preparing Video For Download...