sqloracle触发器条件判断如何指定字段更新才触发?

修改t1表触发t2表的某个字段的修妀

修改t1表,触发t2表新增加一条记录

更新billa中的stat字段billb表中的state字段也同时被修改。。

}

       今天遇到一个有意思的小问题┅同事有这样一个需求:在更新表T时,如果只是更新字段C那么不希望触发该该表的oracle触发器条件判断去处理业务逻辑。即想在oracle触发器条件判断中做出判断:如果更新了字段C那么跳出oracle触发器条件判断,不处理业务逻辑如果是更新其它字段,那么让oracle触发器条件判断去处理业务邏辑

但是这样有一个问题:更新不一定值有变化.当更新的值有变化时,它很好的实现了业务逻辑但是如果更新的值没有变化,那么这段玳码就会失效了

其实这个只需要使用条件谓词 DELETING即可解决,当触发事件是UPDATE时如果修改了COLUMN_X时,则UPDATING(COLUMN_X)则为TRUE否则为FALSE,所以上面代码改为下面代码即可实现其业务需求:

}

我要回帖

更多关于 oracle触发器条件判断 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信