有默认的权限,即public,public是一个公共的权限,只要是用户,都有这个权限
可能你把demo.job的select权限授权给public了

解决方案 »

  1.   

    你是在服务器上是吧,试试connect t/t as sysdba,呵呵
      

  2.   

    Michaelyfj(星星还是那颗星星) 
    说的也有可能
      

  3.   

    是不是你demo 中做过grant select on job to public ?
      

  4.   

    connect t/t;select * from TABLE_PRIVILEGES 
    where owner = 'DEMO';
      

  5.   

    我是在internal用户下创建的
    没有付给它什么权限(除了create session)
    以前也没给public特意付过权限
    感觉挺奇怪你们在机器上试试看,有没有这种情况13:35:08 SQL> connect internal/oracle
    已连接。
    13:35:15 SQL> drop user t;用户已丢弃实际:641
    13:35:21 SQL> create user t identified by t;用户已创建实际:130
    13:35:28 SQL> connect t/t as sysdba;
    已连接。
    13:35:31 SQL> 
    /////////////
    //居然有这种事!!
    /////////////
    13:35:31 SQL> connect internal/oracle
    已连接。
    13:36:26 SQL> revoke sysdba from t;撤销成功。实际:90
    13:36:37 SQL> grant create session to t;授权成功。实际:50
    13:36:55 SQL> connect t/t;
    已连接。
    13:37:01 SQL> select * from demo.job;   JOB_ID FUNCTION
    --------- ------------------------------
          667 CLERK
          668 STAFF
          669 ANALYST
          670 SALESPERSON
          671 MANAGER
          672 PRESIDENT已选择6行。实际:160
    //////////////////