Oracle 快速将某用户所有table的select权限授权给另一用户


任务:将userA所有的table(或view等)的select权限(或insert等)授权给userB

基本思想: 以usera登录.将select 'grant insert on '||table_name ||' to userb;' from user_objects ;生成的所有SQL语句执行。

当然,还有更快捷的方式:将以下语句保存在d:\a.sql,然后以usera登录,执行@d:\a.sql

  1. --//d:\a.sql   
  2. set heading off;   
  3. set echo off;   
  4. set pagesize 0;   
  5. set feedback off;   
  6. spool d:\tmp.sql   
  7. select 'grant select on '||OBJECT_NAME||' to userb;'  
  8.   from user_objects   
  9.  where OBJECT_TYPE in('TABLE');--,'VIEW','SEQUENCE','SYNONYM','FUNCTION');   
  10. spool off;   
  11. @d:\tmp.sql  

相关内容