触发器以防止从表中删除任何内容

2024-03-11

这个新的租赁历史表的触发器,可以防止从表中删除。

CREATE OR REPLACE  TRIGGER RENTALHIS_DEL
BEFORE DELETE ON RENTALHISTORY
BEGIN
dbms_output.put_line( 'Records can not be deleted');
END;

DELETE FROM RENTALHISTORY WHERE RENTALID = 1;



-- It is deleting before it says it can not delete

1 rows deleted.

Records can not be deleted

dbms_output.put_line( 'Records can not be deleted');

上面只是打印文本并且触发器成功完成,然后无论如何都会发生删除。相反,您想要做的是引发错误以阻止程序完成。

使用标准程序raise_application_error停止程序并引发错误:

CREATE OR REPLACE  TRIGGER RENTALHIS_DEL
BEFORE DELETE ON RENTALHISTORY
BEGIN
    raise_application_error(-20001,'Records can not be deleted');
END;
/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

触发器以防止从表中删除任何内容 的相关文章

随机推荐