Oracle分配表权限

时间:2012-05-23 20:22:57

标签: oracle

在Oracle中,表''MyTable'由'User1'拥有,我如何向其他用户授予表访问权限,比如'User2'?

在SQL server中,我们有一些应用程序访问权限,Oracle有什么东西吗?

1 个答案:

答案 0 :(得分:2)

您可以向用户授予SELECT个权限(或INSERTUPDATEDELETE和其他一些权限,例如REFERENCES

GRANT SELECT 
   ON user1.MyTable
   TO user2

但是,更常见的是创建一个角色,为角色授予特权,然后将角色授予用户需要的任何角色,即

CREATE ROLE user1_select;

GRANT SELECT 
   ON user1.MyTable
   TO user1_select;

GRANT user1_select
   TO user2;

这使得将来更容易向更多用户授予单个角色,并确保具有特定工作职能的所有用户具有相同的角色集,而不是尝试确保您已授予每个人访问权限完全相同的一组对象。