TO bechhambobo
其实问题是这样的:
假设一个触发器是针对表A变动而能使得表B也发生相应的变动。则在触发器体内一定是一些对表B进行的执行语句。
我现在的问题是这些执行语句涉及到查询表A的记录数据,这样的话会产生“mutating”、
(变异)而发生错误。
我现在没办法解决这个问题,因为我必须还要返回来查询表A里面其他的数据,然后结合表A里新增的数据(或删除)一起再做些动作。
请问有什么想法和解决办法吗?
非常感谢!!!!!
其实问题是这样的:
假设一个触发器是针对表A变动而能使得表B也发生相应的变动。则在触发器体内一定是一些对表B进行的执行语句。
我现在的问题是这些执行语句涉及到查询表A的记录数据,这样的话会产生“mutating”、
(变异)而发生错误。
我现在没办法解决这个问题,因为我必须还要返回来查询表A里面其他的数据,然后结合表A里新增的数据(或删除)一起再做些动作。
请问有什么想法和解决办法吗?
非常感谢!!!!!
解决方案 »
- Oracle数据库中不知道含义的表
- oracle查看系统日志
- 那位兄弟在用legato的networker备份啊,急(100)?
- 高手帮我看看那这个程序
- 在线求助一个不符合逻辑的SQL问题
- 用游标异常的问题 希望有人解决
- 请教一下oracle存储过程中拆分字符串的函数?
- 我的机器(带有intel的HT技术的p4 2.6G)上怎么就装不起来oracle的呢?而我的同事的机器(p3的)上就可以呢?
- 监听服务(OracleOraHome81TNSListener)在服务栏里一刷新就没有了,连停止、已启动或都已禁用这个几个字都没有了。
- Toad For Oracle中文乱码
- vc开发数据库时,使用addnew在数据库里增加纪录不能通过,请问为什么?
- 如何在表中查到重复的记录,求助一个sql语句。马上给分
before insert or update on a
for each row
declare
cursor t_sor is
select ... from a;
begin
for v_sor in t_sor loop
...
end loop;
update b set=... where id=:new.id;
end;
/
但可以用其它方法引用A表中的字段,如使用decode等.