ผมติดปัญหาเรื่องอัพเดทข้อมูลโดยใช้ Trigger ครับ คือ
ผมมีตาราง 2 ตาราง(สมมุติว่าชื่อตาราง A กับ B นะครับ)
ตาราง A เอาไว้เก็บข้อมูลเวลาการทำงานของพนักงงานแต่ละคนในแต่ละวัน
---------------------------------------------------
ID    |    Work_Date    |  Working_Hours  |
---------------------------------------------------
001  |     1/7/2015      |            8           |
002  |     1/7/2015      |            7           |
003  |     1/7/2015      |            8           |
001  |     2/7/2015      |            8           |
002  |     2/7/2015      |            6           |
003  |     2/7/2015      |            7           |
001  |     3/7/2015      |            8           |
002  |     3/7/2015      |            7           |
003  |     3/7/2015      |            4           |
------------------------------------------------------
ตาราง B เอาไว้เก็บข้อมูลเวลาการทำงานและเวลาการทำงานสะสมของพนักงงานแต่ละคนในแต่ละสัปดาห์
--------------------------------------------------------------------------------------------------------------------------------
ID    | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | Total_Working_Hours |
--------------------------------------------------------------------------------------------------------------------------------
001  |     0     |      0     |       8       |       8     |    8    |      0     |     0     |             24             |
002  |     0     |      0     |       7       |       6     |    7    |      0     |     0     |             20             |
003  |     0     |      0     |       8       |       7     |    4    |      0     |     0     |             19             |
-------------------------------------------------------------------------------------------------------------------------------------
ที่คิดไว้คืออยากทำ Trigger ไว้ที่ตาราง A โดยทุกครั้งหลังจากที่ตารางถูก Insert Update Delete ก็ให้ทำการคำนวณค่าในตาราง A มาเก็บไว้ที่ตาราง B 
(โดยสร้างเป็น Procedure เพื่อใช้ในการ Update ข้อมูลในตาราง B)
แต่ปัญหาคือผมไม่สามารถใช้ข้อมูลของตาราง A ใน Trigger ดังกล่าวได้เพราะเป็นข้อห้าม ติด Error "ORA-04091" 
ผมลองใช้วิธีเพิ่มตารางสำรองขึ้นมาเพื่อเก็บค่า record จากตาราง A ก่อน 
แล้วค่อยใช้ Trigger ในตารางสำรองไปเรียก Procedure อีกทอดนึง ก็ใช้งานไม่ได้เหมือนกัน
ไม่ทราบว่าจะสามารถแก้ไขหรือพอจะมีวิธีอื่นใช้แทนกันได้มั๊ยครับ																															
						 
												
						
					
Oracle Trigger : มีปัญหาเกี่ยวกับการ Update
ผมมีตาราง 2 ตาราง(สมมุติว่าชื่อตาราง A กับ B นะครับ)
ตาราง A เอาไว้เก็บข้อมูลเวลาการทำงานของพนักงงานแต่ละคนในแต่ละวัน
---------------------------------------------------
ID | Work_Date | Working_Hours |
---------------------------------------------------
001 | 1/7/2015 | 8 |
002 | 1/7/2015 | 7 |
003 | 1/7/2015 | 8 |
001 | 2/7/2015 | 8 |
002 | 2/7/2015 | 6 |
003 | 2/7/2015 | 7 |
001 | 3/7/2015 | 8 |
002 | 3/7/2015 | 7 |
003 | 3/7/2015 | 4 |
------------------------------------------------------
ตาราง B เอาไว้เก็บข้อมูลเวลาการทำงานและเวลาการทำงานสะสมของพนักงงานแต่ละคนในแต่ละสัปดาห์
--------------------------------------------------------------------------------------------------------------------------------
ID | Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | Total_Working_Hours |
--------------------------------------------------------------------------------------------------------------------------------
001 | 0 | 0 | 8 | 8 | 8 | 0 | 0 | 24 |
002 | 0 | 0 | 7 | 6 | 7 | 0 | 0 | 20 |
003 | 0 | 0 | 8 | 7 | 4 | 0 | 0 | 19 |
-------------------------------------------------------------------------------------------------------------------------------------
ที่คิดไว้คืออยากทำ Trigger ไว้ที่ตาราง A โดยทุกครั้งหลังจากที่ตารางถูก Insert Update Delete ก็ให้ทำการคำนวณค่าในตาราง A มาเก็บไว้ที่ตาราง B
(โดยสร้างเป็น Procedure เพื่อใช้ในการ Update ข้อมูลในตาราง B)
แต่ปัญหาคือผมไม่สามารถใช้ข้อมูลของตาราง A ใน Trigger ดังกล่าวได้เพราะเป็นข้อห้าม ติด Error "ORA-04091"
ผมลองใช้วิธีเพิ่มตารางสำรองขึ้นมาเพื่อเก็บค่า record จากตาราง A ก่อน
แล้วค่อยใช้ Trigger ในตารางสำรองไปเรียก Procedure อีกทอดนึง ก็ใช้งานไม่ได้เหมือนกัน
ไม่ทราบว่าจะสามารถแก้ไขหรือพอจะมีวิธีอื่นใช้แทนกันได้มั๊ยครับ