日期:2014-05-17  浏览次数:20705 次

关于更新触发器
表A更新时有几个字段当满足某个条件时,将更新该表的标志位,请问用触发器实现该功能有什么问题,请大虾给个例子,感觉会形成嵌套,但是老大要求用触发器来实现。

------解决方案--------------------
没有问题
------解决方案--------------------
写触发器的时候,注意写字段触发
before insert or update
of department_id
on employees
这样,就不会产生嵌套了。
不过,注意,再次更新的内容不能是触发器所触发的字段
------解决方案--------------------
如果不是根据标志位更新的话就不会嵌套。另外,楼上的方法可行
------解决方案--------------------
如果不用for each row 不能读取new和old的值,
因為沒有for each row,Trigger觸發的對象是整個Table,針對整個表的更新或操作,所以不會有:old,:new
有each row,表示觸發的對象是每一條記錄,所以對單筆記錄有:old的值和:New的值之分。。。
因此,應該是for each row的只會鎖定被更新列,如果沒有for each row,該表整個表會被鎖定不允許再做update類的操作,可以試試...
------解决方案--------------------
select 1=1,1= '1 ', '1.0 '=1, '1 '= '1.0 ', '01 ' = ' 1 ', '01 ' = ' 1 ', 1= '01 ', '1 '=1, '1. '=1, 1.00=1.0, '1.00 '= '1.0 ';

What 's the result in MYSQL? If using Oracle, add "from dual " at the end.

DO YOU KNOW BEFORE RUNNING IT?