我的system用户下有一张表users
我原来的 SQL  :  select system.users.* from system.users;users对应的类是 Users . 其他都正常。
  我测试过    select users from Users as users; 是可以的。
我发现,写成HQL : select system.users from system.Users as users;不行啊。 
 
请大家帮忙。 !!!!   先写过了。

解决方案 »

  1.   

    不是吧。
    人说csdn高手多。
    没人帮我,是不是就是没人会啊
      

  2.   

    弱弱问一句 : 您用HQL的登入帐户是DBA的么?  普通用户是没有权限看系统表的吧~~
      

  3.   

    还有一个问题就是HQL会认为您的system.User是 system包下的USER类,请问您有 system 这个包么?
      

  4.   

    呵呵。 
      我只是打个比喻 
       实际上我的用户是  gpsystem 用户下的 cl01 表。
       另一个用户是 fcsystem 用户下的 cu01 表。
     fcsystem 登陆 PLSQL Developer 是可以这样写的。 
                            select gpsystem.cl01.* from gpsystem.cl01
            相反 同上。
      不知道我说明白没有。            
      

  5.   

    是,我知道,  
       问题就在这儿呢。  所以我不知道怎么写。 其实就算是有system 这个包。并不是我想要的。 
    我想要的是  system 用户下的表。
      

  6.   

    我也知道这样写 。   
          fcsystem 登陆 PLSQL Developer 是可以这样写的。 
                            select gpsystem.cl01.* from gpsystem.cl01
    把这句改成 hql 怎么写 。 或者别的解决办法也行。
      

  7.   

    呵呵。 问题解决了。  
       修改  hbm.xml 里面的  cl01 的table name 属性为 gpsystem.cl01  就ok了。
      hql 照样写 from cl01