3,491
社区成员
发帖
与我相关
我的任务
分享
create table test
(
id number,
status varchar2(10)
)
/
--测试表
实现功能:当发生test 被update的时候,并且status='UNC'的时候,把status='MOD'
考虑到用触发器:
CREATE OR REPLACE TRIGGER TRI_on_test
AFTER update
ON test
REFERENCING OLD AS O NEW AS N
FOR EACH ROW
BEGIN
IF update(test.status)&& :N.status='UNC' THEN
update test t set status='MOD' where t.rowid=:N.rowid and t.status='MOD';
END IF;
EXCEPTION
WHEN OTHERS THEN
RAISE_APPLICATION_ERROR(SQLCODE,SQLERRM);
END;