提示- ORA-01031: insufficient privileges为什么我赋权给别人查我自己的表都不行呢?
要把当前用户的所有权限(对表,视图,序列,触发器,同义词等增删改查)赋给另一个用户要怎么写?

解决方案 »

  1.   

    要用sys或者system用户登录进去赋权限
      

  2.   

    select any table 授权访问的可不只是当前用户下的表
    如果要授予这样的权限,还不如直接使用这个用户来操作?
      

  3.   


    select any table是系统权限,需要有dba的权限才能grant给别人你这里普通的用户只能grant对象权限。
      

  4.   

    奇怪啊我现在的环境下有两个用户A和B在B下建任何表不做授权A都能查询(只能查询,没有修改权限)这个环境不是我搭的,是以前人建的 他是怎么实现的呢?
      

  5.   

    看看你的A用户是什么权限,是不是有DBA的权限?
    或者是不是在A用户下建立了视图或同义词什么的
      

  6.   

    怎么看自己是否有DBA权限
    视图或同义词怎么做到B建表后A立即能查询?
      

  7.   

    权限不够 得用 SYS 进去赋权限
      

  8.   

    把下面的语句写到文件中,如d:\a.sql,然后执行 @d:\a.sql 一步完成 所有赋权工作。
    还有触发器是不能赋权限给别人的。
    set heading off;
    set echo off;
    set pagesize 0;
    set feedback off;
    spool d:\b.sql
    select 'grant all on '||OBJECT_NAME||' to 用户名;'
      from user_objects
     where OBJECT_TYPE in('TABLE','VIEW','SEQUENCE','SYNONYM','FUNCTION');
    spool off;
    @d:\b.sql