Oracle触发器-变异表触发器不能访问本表


1
CREATE OR REPLACE TRIGGER trgregisterpregroup 2 AFTER UPDATE 3 ON tblregisterusers 4 FOR EACH ROW 5 …… 6 END trgregisterpregroup;

对表tblregisterusers创建了触发器,这属于行级的触发器,可以有:OLD和;NEW数据

但是,不能再对变异表进行select操作,不然就会报异常

原因:

当对一个表创建行级触发器时,有下列两条限制:

1.不能读取或修改任何触发语句的变异表;
2.不能读取或修改触发表的一个约束表的PRIMARY  KEY,UNIQUE 或FOREIGN KEY关键字的列, 但可以修改其他列

解决方法:

 但是这样又会遇到一个问题

解决办法,在末尾加上commit;

博客园:http://www.cnblogs.com/zhuziyu/
Copyright ©2018 不是植物
【转载文章务必保留出处和署名,谢谢!】
原文地址:https://www.cnblogs.com/zhuziyu/p/8426677.html