user1下面有N张表,要让user2可以查询user1的所有表,这个怎么授权啊?
看哪个grant给对象授权的语法,好像只能一张表一张表的授权养!
实际工作中是怎么来实现这样的需求的?写一个脚本?

解决方案 »

  1.   

    如果很多表,那就 用select 语句生成一个语句列表,那样能省不少时间。
      

  2.   

    从USER_TABLES中获取表,然后组成动态SQL,直接执行
      

  3.   

    connect as user_1
    grant select on table_1,table_2 to user_2
      

  4.   

    user1的表授权给user2查询了 
    查询的时候也必须加上user1.tablename这样吗? 可以不加不?
      

  5.   

    使用SYS用户授权grant select any table to 用户
      

  6.   

    grant select any table to 用户
      

  7.   

    授权的语法:grant select on 权限名称 to 表名称注解:权限名称就是 user1(所以user1在此充当了权限名称)的权限授权给user2,表明也就是被授权的表