ตรวจพบว่ายอดคงเหลือติดลบก่อนยืนยันงานชุดหนึ่ง ควรทำอะไรกับการแก้ไขทั้งหมดใน transaction?
กใช้ ROLLBACK เพื่อยกเลิกการเปลี่ยนแปลงที่ยังไม่ได้ commit
ขสร้าง SAVEPOINT ก่อนช่วงเสี่ยงและ ROLLBACK TO เมื่อต้องยกเลิกเฉพาะส่วนหลัง
ครวมทุกการปรับยอดไว้ใน transaction เดียวเพื่อให้สำเร็จทั้งหมดหรือยกเลิกทั้งหมด
งให้ข้อมูลที่ commit และตอบรับแล้วถูกบันทึกถาวรแม้เกิดความขัดข้องภายหลัง
เฉลยอธิบาย
PostgreSQL 18 Documentation: Transactions Section 3.4 Transactions รองรับแนวทางว่า ใช้ ROLLBACK เพื่อยกเลิกการเปลี่ยนแปลงที่ยังไม่ได้ commit จึงแก้เงื่อนไขหลักในโจทย์ได้ตรงกว่าแนวทางของประเด็นอื่น