วันอาทิตย์ที่ 1 ธันวาคม พ.ศ. 2556

คำถามท้ายบทที่ 2 ข้อ 5


ชื่อ นางสาว ปัทมวรรณ จำปีทอง
สาขา วิทยาการคอมพิวเตอร์ กลุ่ม 2
รหัสนักศึกษา  544244050
วิชา COMP331 ระบบการจัดการฐานข้อมูล
ชื่องาน :  คำถามท้ายบทที่ 2 ข้อ 5



คำถาม
    จากตัวอย่างที่นำมาตอบในข้อ 4 แบบใดเป็น  การทำงานเป็นเหมือนต่อเนื่อง  และแบบใดไม่เป็นการทำงานเป็นเหมือนต่อเนื่อง

 คำตอบ

แบบที่  1


ถอนเงิน (T1)ฝากเงิน (T2)   acc   
begin_transaction500
read(acc)
acc = acc + 200
begin_transaction
write(acc)700
read(acc)
rollback500
acc = acc - 150
write(acc)550
commit


แบบที่ 1 ไม่เป็นการทำงานเป็นเหมือนต่อเนื่อง  
เหตผล เพราะข้อมูลของ  T2  ไม่ได้รับการยืนยันข้อมูล  เมื่อมีการเปลี่ยนแปลง  T1  ใช้ข้อมูลจาก  T2  ที่อ่านได้  ก่อน  rollback  การทำงานจึงไม่สมบูรณ์

แบบที่  2

T1T2   acc   
begin_transaction500
begin_transaction
read(acc)
read(acc)
acc = acc + 300
acc = acc - 100
write(acc)800
write(acc)700
commit
commit


แบบที่  2  เป็นการทำงานเป็นเหมือนต่อเนื่อง  
เหตุผล เพราะ  ลำดับการทำงาน  การยืนยันข้อมูล  และข้อมูลย้อนกลับมีความสัมพันธ์กัน และมีความถูกต้อง