Oracle设置某张表为只读
Oracle 11g开始支持设置某张表为只读,这样可以防范对某些表的修改,起到一定的安全性。
设置如下:
--设置表为只读权限(加锁) ALTER TABLE tab_name READ ONLY ; --设置表的读写权限(解锁) ALTER TABLE tab_name READ WRITE ;
当表需要进行更新、增删记录时,可以重新设置读写权限,对表进行修改操作后,再次设置为只读属性。
拓展:在某些特定情况下,可能需要某张表的记录只能增加,不能删除,这怎样实现呢?
一种可供参考的方法是对这张表加上触发器,当对表进行更新、删除等操作时,触发抛出异常,进行insert时,不触发异常。