hibernate的createSQLQuery多表查询

请教如下问题
 
SELECT {c}.code, {c}.full_name FROM CUSTOMER {c} ORDER BY {c}.CODE,{c}.DBIF_DEPT        
Query query = session.createSQLQuery(SQL_FIND_ALL,
                    new String[] { "c" }, new Class[] { Customer.class });
 
运行出现如下错误
HIBERNATE>WARN  2005-09-22 09:28:22,023 [main] SQL Error: 17006, SQLState: null
HIBERNATE>ERROR 2005-09-22 09:28:22,023 [main] 列名无效
 
QL_FIND_ALL 改成 select {c.*} 运行ok
据我了解 select 的字段 要和 Customer 的 属性一一对应
 
可是现在有如下sql
 select U.code, U.short_name, U.full_name, U.bank_trade, M.short_name0
 from unit U, mtm_acct_flg M
 where branch = 引数.branch and, dept = 引数.dept and, section = 引数.section and, U.mtm_acct_flg = M.code
 order by U.code
 
我现在有unit,mtm_acct_flg两个class,unit里如果能包含mtm_acct_flg对象就有办法处理.可是这两个对象,是相互独立的。
要从两张表中抽去数据,该如何处理?
也就是select 的字段如何和session.createSQLQuery里的第三个参数一一对应起来???
 
解决问题的前提是,必须用createSQLQuery方法,只能用sql语句,unit和mtm_acct_flg,两个class相互独立,不能修改数据库。
 
有技术能处理吗?有,请稍微指点一下,不能也请说出理由,欢迎大家讨论。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值