如何授予每位员工对自己数据的只读权限?

时间:2011-12-01 17:58:54

标签: sql grant

我有一个名为Employee的表(包含name, ssn, age等列。)

假设您希望为每位员工提供对他/她自己的个人行的只读访问权限 [在Employee表中描述它们的数据。

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

根据您的DBMS,您可能能够创建一个视图,该视图仅从Employee表中选择已登录用户的行,并授予对该行的访问权限。例如,在Oracle中,您可以执行以下操作:

 create view current_employee as
 (select * from employee e where e.user_id = uid);

('uid'标识当前登录的用户)。

当然,正如其他人所说,更常见的情况是不让最终用户直接登录到数据库,而是让应用程序代表他们检索数据,并负责限制访问。 / p>