日期:2014-05-17  浏览次数:20909 次

oracle授权用户
--添加登录 a,设置密码为a123456
create user a identified by a123456

--授予角色 r_jst 对 View_test 视图的 SELECT 权限
GRANT SELECT ON View_test TO a

sql里面有角色分组之类的,不知道oracle有没有,就执行上面两步是否OK?

另外用查询时,select 时,好像要加上数据库名:select * from ???
请指点



------解决方案--------------------
SQL code
create user a identified by a123456
GRANT SELECT ON r_jst.View_test TO a
select * from r_jst.View_test

------解决方案--------------------
可以的,没有问题。
在Oracle中前面的限定名叫做“方案”,如hr.employees,表示HR方案中的employees表。
当然也可以创建别名,来省略方案名。
------解决方案--------------------
ORACLE 也有角色这一种数据库对象,
你可以创建一个角色比如 ROLE_A,接着把用户a所有需要的权限授予角色ROLE_A,然后把ROLE_A授予用户a。

查询时如果非该用户模式下的表对象,就要用SCHEMA.TABLE_NAME这样的形式,如果不想用这种形式,可以用到同义词。

SELECT * FROM SCHEMA.TABLE_NAME

CREATE SYNONYM synonym_name FOR SCHEMA.TABLE_NAME
SELECT * FROM synonym_name
------------------------------------------------------
ORACLE DBA技术交流QQ群:9610122 (欢迎你的加入!)