首页 > 数据库技术 > 详细

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

时间:2018-02-07 16:15:30      阅读:243      评论:0      收藏:0      [点我收藏+]

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;

技术分享图片

 

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

原文:https://www.cnblogs.com/zhuziyu/p/8426677.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!