如何保护表格中的1列不受更新/删除?
的影响用户可以访问数据库,但需要保护特定表的1列不被更新。
在这种情况下,触发器会不会只提供只读访问权限?
答案 0 :(得分:4)
您无法撤消单个列的更新权限,但您可以定义可以更新的列:
假设您的表格有三列:column_1, column_2, column_3
,并且您希望禁止some_user
更新column_3
,则可以执行以下操作:
grant select,insert on some_table to some_user;
grant update (column_1, column_2) on some_table to some_user;
用户可以查看所有数据,插入新行(包括column_3
的数据),但some_user
永远不会更改column_3
中的任何内容。