我用户“zhang”(具有sysDBA权限)建了几个表(friend,other,family),然好我又建了一个用户“u1”然后我给他赋如下权限
create user u1 identified by p123GRANT CREATE SESSION TO U1
GRANT ALTER ANY TABLE TO u1;
GRANT CREATE ANY TABLE TO u1;
GRANT DELETE ANY TABLE TO u1;
GRANT DROP ANY TABLE TO u1;
GRANT SELECT ANY TABLE TO u1;
 
然后我用 u1/p123登陆到SQLplus,然后select* from friend
什么提示我说friend表不存在?????

解决方案 »

  1.   


    要么
    select* from zhang.friend
    要么给friend建同义词才能这样用
      

  2.   

    CREATE PUBLIC SYNONYM friend FOR zhang.friend ;
    这样建好同义词后
    用其它用户登录就可以直接
    select* from friend
      

  3.   

    这个我也试过了,提示这样的错误:insufficient privileges
      

  4.   

    我已经GRANT SELECT ANY TABLE TO u1 了
    为什么执行select* from zhang.friend 会提示权限不足呢?
      

  5.   

    非常抱歉啊,我刚才看了一次u1的权限,没有select权限,还有问一下就是,当我们创建一个对象后为什么要commit;?
      

  6.   

    还有问一下就是,当我们创建一个对象后为什么要commit;?
    ======================================================
    应该不需要啊。DDL 命令是隐式提交的。