上下文:日志记录表发生了变化,我们不希望意外地弄乱日志条目。这是一个内部的非财务应用程序,因此我们不担心恶意修改。
我以为我可以撤销删除/更新,但事实证明你不能对自己这样做:
ORA-01749: you may not GRANT/REVOKE privileges to/from yourself
最常规的做法是什么?
答案 0 :(得分:4)
您不应使用触发器来强制执行安全要求。
您应该创建另一个架构所拥有的表,然后只授予必要的权限(例如INSERT
)。
答案 1 :(得分:1)
在表格上设置BEFORE UPDATE
和/或BEFORE DELETE
触发器,这将始终引发异常。