ยินดีต้อนรับสู่ Transactions และการจัดการข้อผิดพลาดใน PostgreSQL

Transactions and Error Handling in PostgreSQL

Jason Myers

Principal Engineer

วัตถุประสงค์การเรียนรู้และชุดข้อมูล

  • รักษาความสมบูรณ์และความน่าเชื่อถือของข้อมูลด้วย transaction
  • ผลกระทบของ concurrency ต่อ transaction
  • การจัดการข้อผิดพลาดร่วมกับ transaction
Transactions and Error Handling in PostgreSQL

เหตุผลที่ควรใช้ transaction

patient_intake

name priority
Oscar Parker 1
Prisha Ahmed 2
Rhea Taylor 3
UPDATE patient_intake SET priority=1 
WHERE name='Prisha Ahmed';

UPDATE patient_intake SET priority=2 
WHERE name='Oscar Parker';
Transactions and Error Handling in PostgreSQL

ผลลัพธ์ตารางที่เกิดข้อผิดพลาด

patient_intake

name priority
Oscar Parker 1
Prisha Ahmed 1
Rhea Taylor 3
Transactions and Error Handling in PostgreSQL

การใช้ transaction

BEGIN;

UPDATE patient_intake SET priority=1 
WHERE name='Prisha Ahmed';

UPDATE patient_intake SET priority=2 
WHERE name='Oscar Parker';

COMMIT;
Transactions and Error Handling in PostgreSQL

เหตุผลเพิ่มเติมในการใช้ transaction

  • หลายคำสั่งที่ต้องสำเร็จหรือล้มเหลวพร้อมกัน
  • การจัดการผลกระทบของ concurrent operations ต่อคำสั่ง
Transactions and Error Handling in PostgreSQL

Transaction blocks

BEGIN TRANSACTION;

UPDATE patient_intake SET priority=1 
WHERE name='Prisha Ahmed';

UPDATE patient_intake SET priority=2 
WHERE name='Oscar Parker';

COMMIT;
Transactions and Error Handling in PostgreSQL

ใช้คำสั่งได้จำนวนเท่าใดก็ได้

BEGIN;

UPDATE patient_intake SET priority=2 
WHERE name='Oscar Parker';

UPDATE patient_intake SET priority=1 
WHERE name='Rhea Taylor';

UPDATE patient_intake SET priority=3 
WHERE name='Prisha Ahmed';

COMMIT;
Transactions and Error Handling in PostgreSQL

มาฝึกกันเถอะ!

Transactions and Error Handling in PostgreSQL

Preparing Video For Download...