我准备用 类似下面的语句:
select 'grant select on '||owner||'.'||object_name||' to role_pddev;'
from dba_objects
where owner in ('xx')
and object_type='TABLE';
觉得还是太笨拙了。

解决方案 »

  1.   


    我准备用 类似下面的语句:
    select 'grant select on '||owner||'.'||object_name||' to role_pddev;'
    from dba_objects
    where owner in ('xx')
    and object_type='TABLE';
    觉得还是太笨拙了。
    看执行的频率吧,如果是只执行一次,这么写没什么问题
    如果可能多次执行,建议建立存储过程
    将写好的查询语句作为游标,然后逐条取出,循环动态执行
      

  2.   

    看见熟人心情大好目前的权限应该是不能够直接关联用户的,只能一个一个赋对象权限
    除了用select来拼语句,在存储过程中动态授予其实也是一样的
    目前没有更简单的途径
    另外,触发器不用授权的
      

  3.   


    我准备用 类似下面的语句:
    select 'grant select on '||owner||'.'||object_name||' to role_pddev;'
    from dba_objects
    where owner in ('xx')
    and object_type='TABLE';
    觉得还是太笨拙了。我能想到的也就是这个。  你不会有好几万个对象吧。