修改表A的某字段时将此字段内容传入表B修改对应字段内容的触发器写法
2015-01-09 11:48
183 查看
ORA-04091:表发生了变化触发器/函数不能读
create or replace trigger "TRIG_ONMODY_T_SUPERVISION_MX"
after update on t_supervision_mx
referencing old as o
for each row
declare
sxfl VARCHAR2(64);
PRAGMA AUTONOMOUS_TRANSACTION;
begin
if :o.mxtype='task' then
select ab.status
into sxfl
from t_supervision_mx ab
where ab.taskid = :o.taskid;
if sxfl='申请撤销' then
update t_supervisiontask a set a.taskstatus= 15 where a.id = :o.taskid;
update t_supervisiontaskfeetback b set b.feetbackcontent= :o.faNKUIQINGKUANG where b.taskid= :o.taskid;
end if;
if sxfl='申请完成' then
update t_supervisiontask a set a.taskstatus= 10 where a.id = :o.taskid;
update t_supervisiontaskfeetback b set b.feetbackcontent= :o.faNKUIQINGKUANG where b.taskid= :o.taskid;
end if;
end if;
commit;
end TRIG_ONMODY_T_SUPERVISION_MX;
注意添加自治事务,否则将会出现
ORA-04091:表发生了变化触发器/函数不能读
的错误相关文章推荐
- 触发器修改符合条件字段对应的值
- [原创]通过动态Sql语句,一次性彻底删除或者修改SBO的某个字段对应内容的信息
- 数据表中字段内容串联的sql语句写法
- 批量修改数据库某字段内容
- oracle数据库建表、修改字段名称类型、增加字段、ID自动增长写法
- 动易首页调用自定义字段内容的修改方法
- --任务三:触发器 --遵循编码规范,创建触发器,当改变“资源分类表”的“分类编号”时,自动修改“资源表”中,资源对应的“分类编号”。
- sql中修改字段属性的写法
- SQL - 根据关联,用一个表的值修改另一个表对应字段的值
- 请教怎么样在一个字符字段里修改里面的内容加文字上去
- sql替换语句 批量修改、增加、删除字段内容
- 点击一个表格行,生成对应的input去修改表格中的内容
- ajax修改实体对应数据库字段
- 用触发器保证数据库中指定的字段不允许修改
- SQL替换语句 批量修改、增加、删除字段内容
- 修改表字段内容批量替换
- sql替换语句 批量修改、增加、删除字段内容
- 分组查询统计数据 再连接字段修改另一个字段的内容(临时表temporary 和 视图view)
- sql 根据关联 用一个表的值修改另一个表对应字段的值
- [原创]sqlserver2005 从大文本字段中查找某关键字对应的内容