变异表的问题

sza*_*man 1 oracle select triggers

我想创建触发器,在插入某个表后将触发,让我们说用户.在这个触发器中,我想从表用户中选择一些记录,除了这个我插入到表中,但后来我收到有关变异表的错误.是否有可能从此表中获取记录?

Dav*_*dge 8

自治事务方法是一种解决方法,但没有解决其他一些基本问题.

这种方法的主要问题是,当同时对表进行多次修改时,触发的触发器不会看到其他修改的结果.因此,从触发器代码中获得的结果可能不正确.

例如,如果您在"客户订单"表上有一个触发器,用于维护客户表中的"客户总订单"列,那么同时放置的两个订单就无法看到对方.他们每个人都尝试更新"客户总订单",其总数不包括其他订单.

由于这个原因和其他原因,将触发器用于业务逻辑或维护其他表数据通常被认为是不好的做法.