读书人

关于hibernate 子表 like 查询的有关问

发布时间: 2012-01-14 20:02:35 作者: rapoo

关于hibernate 子表 like 查询的问题
以下是我的查询语句

sql= "select pro from A表 as pro where pro.tscomrelation.projectname like ? ";

Query q=ss.createQuery(sql);

q.setString(0, "%你% ");

居然报错,tscomrelation 是 A表的明细表,A表跟tscomrelation 表是one to many的关系,如果我只like查询 A表中的不会出现报错,但是一查询tscomrelation (A表的子表)就出现报错,请问高手是不是配置问题,不能查询到第二级表

[解决办法]
select pro from A表 as pro where pro.tscomrelation.projectname like ?


大哥,你已经不是查询对像了,你是查询对像的属性,你应该只查对像,然后访问对像的属性啦....
[解决办法]
"select pro from A表 as pro where pro.tscomrelation.projectname like ? "
相当于隐士内连接,只能多对1,或者1对1,不能一对多
改成
"select pro from A表 as pro join pro.tscomrelation as pt where pt.projectname like ? "


读书人网 >Java Web开发

热点推荐