关于HIbernate的查询问题!!!!!!!!!!!!!

[复制链接]
查看11 | 回复10 | 2011-5-19 12:50:33 | 显示全部楼层 |阅读模式
假如我有两张实体,分别是A,B

A有的属性有

uid,name,age;

B中的属性有

sid,uid.class;

现在我想这样查:

fromAa,Bbwherea.uid=b.uidandb.sid=\'a007\';

为什么这样查不行的?会报错,说找不到uid属性,但uid属性在类里都有的了!求解!

或者各位大侠有什么方法能达到我这样的效果
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
不要做关联的
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
不可能没关联吧,你wherea.uid=b.uid那不就是表有关联嘛。。。
虽然数据库没关联你可以在hibernate里做关联啊
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
hibernate做关联很麻烦啊,要搞那些一对多和多对一这些的,为什么在SQL中可以执行啊,HQL却执行不了
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
是的
hql里from后面跟的是表的映射类,貌似只能是一个,你那种写法我真没弄过,但是可以这样理解fromA查的是A里的所有数据,突然你给他变fromAa,Bb里他就不知道查什么数据了。
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
在hibernate里面怎么执行SQL语句?就是查的是表名,网上找的很多都运行不了的。谢谢啦
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
session.createSQLQuery(\"selecta.*,b.*fromAa,Bbwherea.uid=b.uidandb.sid=\'a007\'\");
这样可以了,但是取数据太困难了。你可以研究下
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
报错,说找不到实体A和B!还有,这个明明是list类型的,为什么会有Object[]?
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
刚弄错了应该是ListObject[]找不到实体类你确定你的配置文件没错?或者A表存在?不是pojoA
回复

使用道具 举报

千问 | 2011-5-19 12:50:33 | 显示全部楼层
都存在的
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行