日期:2014-05-17  浏览次数:20756 次

一个触发器的问题(急)
我现在有这样一个需求,就是系统有个更新语句,我无法更改,但是他更新的值是错的,我想在他更新的时候,建一个触发器,改成正确的值,
我不知道怎样做,望高人帮助

就是比如有个A表,有个 aaa字段
当 系统更新aaa字段值为 'accept'的时候,我需要调我的触发器,把这个accept 更新为 report_accept

我总是出现死循环或死锁问题,望大家帮忙

------解决方案--------------------
SQL code

--建表
create table A(aaa varchar(20));
--建触发器
create or replace trigger A_biur
before insert or update
on A
for each row
begin
    if :new.aaa='accept' then
        :new.aaa:='report_accept';
    end if;
end;
/
--测试
insert into a values('accept');
select * from a;
update a set aaa='accept1';
select * from a;
update a set aaa='accept';
select * from a;
--完成

------解决方案--------------------
探讨

SQL code

--建表
create table A(aaa varchar(20));
--建触发器
create or replace trigger A_biur
before insert or update
on A
for each row
begin
if :new.aaa='accept' then
:new.aaa:='report_accept……