直接在你的触发器里写 UPDATE employee set salary=salary+涨的数量 有什么问题? 你的代码贴出来看看...
不用触发器,直接update写,在一个事务中做
update employee set salary=salary+add_alary where dept='加薪部门'
我的代码: create or replace trigger update_salary before update on employee for each row declare pragma autonomous_transaction; begin update employee set salary = :new.salary where (dept = :old.dept) and (ID!=:old.ID); commit; end; /然后 我更新 update employee set salary = 2000 where ID = '4'; 报错 ora-00060:等待资源是检测到死锁 ora-06512 在"MYQ_ADMIN.UPDATE_SALARY",line 4 ora-04088 :触发器"MYQ_ADMIN.UPDATE_SALARY"执行过程中出错
UPDATE employee set salary=salary+涨的数量
有什么问题? 你的代码贴出来看看...
where dept='加薪部门'
create or replace trigger update_salary
before update on employee for each row
declare
pragma autonomous_transaction;
begin
update employee set salary = :new.salary where (dept = :old.dept) and (ID!=:old.ID);
commit;
end;
/然后 我更新
update employee set salary = 2000 where ID = '4';
报错
ora-00060:等待资源是检测到死锁
ora-06512 在"MYQ_ADMIN.UPDATE_SALARY",line 4
ora-04088 :触发器"MYQ_ADMIN.UPDATE_SALARY"执行过程中出错