有什么方法可以防止表格更新?

时间:2020-01-09 18:47:08

标签: oracle plsql

如标题中所述,是否可以防止表中的数据被更新? 我尝试使用以下触发器

CREATE OR REPLACE TRIGGER block_payment_update
BEFORE UPDATE ON payment  
DECLARE 
e_no_update_allowed EXCEPTION;
BEGIN
    RAISE e_no_update_allowed;
    EXCEPTION WHEN e_no_update_allowed THEN
    dbms_output.put_line('Updating PAYMENT table is not allowed');
END;

我知道可以将LOCK TABLE statementSHARE ROW EXCLUSIVE一起使用,但是是否有可能也会阻止向表中插入数据?

1 个答案:

答案 0 :(得分:4)

就像发表评论的好友一样,您可以REVOKE更新数据库中的特权,这是一个示例。

REVOKE UPDATE ON table to <username>

可能有用的信息:

GRANT创建权限规则

REVOKE删除权限规则