oracle觸發(fā)器update寫法 Oracle-A表a字段更新后,修改b字段的值,寫了個觸發(fā)器,執(zhí)行報錯ora-04091?
Oracle-A表a字段更新后,修改b字段的值,寫了個觸發(fā)器,執(zhí)行報錯ora-04091?當然不是。如果在修改a字段時未提交update語句,則會有一個鎖。當然,不可能通過觸發(fā)器讀取同一行。如果修改是
Oracle-A表a字段更新后,修改b字段的值,寫了個觸發(fā)器,執(zhí)行報錯ora-04091?
當然不是。如果在修改a字段時未提交update語句,則會有一個鎖。當然,不可能通過觸發(fā)器讀取同一行。如果修改是連續(xù)的,那么我想我要寫的不是觸發(fā)器,而是一個過程,而不是觸發(fā)器。每次修改表時,都會調(diào)用此過程(只需傳入要修改的參數(shù))。在此過程之前,更新conttype。提交后,更新glbdef1字段。最好有一個序列。
oracle當表A1,數(shù)據(jù)發(fā)生update時,將字段time更新為當前時間?
最初我的想法是設置觸發(fā)器,但現(xiàn)在看來我無法設置觸發(fā)器。因為要修改的表是A1,時間域是A1,也就是說修改時間域會觸發(fā)A1表的更新。無論是在之前還是之后,這意味著更新A1一直在重復。我認為您可以編寫一個存儲過程,然后用它來修改表A1。實際上,存儲過程中有兩個update語句,一個是update字段,這個語句需要傳遞參數(shù),比如要修改的字段和內(nèi)容。另一個語句是修改時間,這個不需要參數(shù),只是一個固定的語句,所以應該是可以的。