การทำงานกับ savepoint เดียว
ธนาคารที่มีมูลค่าสูงในบัญชีเงินฝากตลาดเงิน (Money Market Deposit Accounts — MMDA) มักมีความสามารถในการรับมือกับภาวะเศรษฐกิจถดถอยได้ดี เพื่อจำแนกประเภทธนาคาร เราจะใช้ฟิลด์ flag อย่าง FIELD48 สำหรับเก็บข้อมูลที่เป็นประโยชน์ในการประมวลผลต่อไป โดยในแบบฝึกหัดนี้จะทำการ flag ธนาคารที่มีมูลค่า MMDA เกิน 5,000,000
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
Transactions and Error Handling in PostgreSQL
คำแนะนำการฝึกหัด
- สร้าง transaction
- อัปเดต
FIELD48เป็นMMDAหากRCON6810(มูลค่า MMDA) มากกว่า5000000 - กำหนด savepoint ชื่อ
mmda_flag_set - Rollback transaction ทั้งหมด
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
BEGIN;
-- Set the flag to indicate that they hold MMDAs where more than $5 million
UPDATE ffiec_reci
SET FIELD48 = '___'
WHERE ___ > 5000000;
-- Set a savepoint
___ ___;
-- Rollback the whole transaction
___;
COMMIT;