在 oracle 中 创建了一个表空间  temp_table_space用system 用户 创建了一个 用户 temp_user 默认在 temp_table_space 空间下  用 temp_user 创建了 shop  ,employee , goods 表 有用 system  创建了 一个 temp_user_1 用户 创建 角色 role_a结果 
在 system 用户 下 grant slect on temp_user.shop to role_a ;                commit;显示权限不足的问题,system 何 sys 用户 不都是超级管理员用户么  ,sys用户有创建数据库的权限 system 没有创建数据库的权限 对么??????  为什么权限不足!

解决方案 »

  1.   

    你是connect system/manager as sysdba?
    还是connect system/manager as normal?
    这样是有区别的饿。.....登陆的身份不同,权限是不同的.......
    sys 的 只能用sysdba 登陆好象,system 可以用普通用户下登陆
      

  2.   

    你是connect system/manager as sysdba?
    还是connect system/manager as normal?
    这样是有区别的饿。.....登陆的身份不同,权限是不同的.......
    sys 的 只能用sysdba 登陆好象,system 可以用普通用户下登陆
      

  3.   

      用户类型分为:SYSDBA、SYSOPER、system(normal)  
       
      用户名为“system"的是DBA用户,你用的是system类型的用户,不具备DBA权限
      

  4.   

      用户类型分为:SYSDBA、SYSOPER、system(normal)  
       
      用户名为“system"的是DBA用户,你用的是system类型的用户,不具备DBA权限
      

  5.   

    应该是没问题的,不用as sysdba登录也没有问题的
    你把你具体的语句贴出来看一看,在哪一步报错的?
      

  6.   

    明白了  上网看看才明白  sys是在oracle 实例创建的时候就存在的 用户  最顶级的用户    数据库启动之后 才具有  dba 的用户  
      

  7.   

    我一般都是用sys,并且以sysdba的身份登录。
    至于楼主所说问题,还没真没碰到过。不过刚才测试了一下,用system以normal身份登录,发现没有报错: 
    grant select on datarep.dim_disc to role_a;
    --Grant succeeded