我准备用 类似下面的语句: select 'grant select on '||owner||'.'||object_name||' to role_pddev;' from dba_objects where owner in ('xx') and object_type='TABLE'; 觉得还是太笨拙了。
我准备用 类似下面的语句: select 'grant select on '||owner||'.'||object_name||' to role_pddev;' from dba_objects where owner in ('xx') and object_type='TABLE'; 觉得还是太笨拙了。 看执行的频率吧,如果是只执行一次,这么写没什么问题 如果可能多次执行,建议建立存储过程 将写好的查询语句作为游标,然后逐条取出,循环动态执行
我准备用 类似下面的语句: select 'grant select on '||owner||'.'||object_name||' to role_pddev;' from dba_objects where owner in ('xx') and object_type='TABLE'; 觉得还是太笨拙了。我能想到的也就是这个。 你不会有好几万个对象吧。
我准备用 类似下面的语句:
select 'grant select on '||owner||'.'||object_name||' to role_pddev;'
from dba_objects
where owner in ('xx')
and object_type='TABLE';
觉得还是太笨拙了。
看执行的频率吧,如果是只执行一次,这么写没什么问题
如果可能多次执行,建议建立存储过程
将写好的查询语句作为游标,然后逐条取出,循环动态执行
除了用select来拼语句,在存储过程中动态授予其实也是一样的
目前没有更简单的途径
另外,触发器不用授权的
我准备用 类似下面的语句:
select 'grant select on '||owner||'.'||object_name||' to role_pddev;'
from dba_objects
where owner in ('xx')
and object_type='TABLE';
觉得还是太笨拙了。我能想到的也就是这个。 你不会有好几万个对象吧。