【问题标题】:Pre loading objects in an HQL query在 HQL 查询中预加载对象
【发布时间】:2009-11-02 15:11:06
【问题描述】:

当我根据以下链接中的建议选择 Student 对象时,我正在使用以下 HQL 查询尝试加载一组对象。 http://www.javalobby.org/articles/hibernate-query-101/

from gradebook.model.Student student where student.studentId=1 left join fetch student.scores

我收到以下错误。 意外标记:靠近第 1 行第 64 列 我已将映射文件的相关部分粘贴在下面。

<set name="scores" inverse="true" lazy="true" table="score" fetch="select">
<key>
<column name="student_id" not-null="true" />
</key>
<one-to-many class="gradebook.model.Score" />
</set>

【问题讨论】:

    标签: hibernate hql


    【解决方案1】:

    HQL 语法错误。 JOIN 子句属于 WHERE 子句之前。

    HQL 语法基于 SQL 语法。如果您不太了解 SQL 语法,那么您也可能会遇到 HQL 语法的问题。我可以向您推荐SQL tutorial at w3schools.com

    祝你好运。

    【讨论】:

    • 谢谢,移动连接解决了问题。 AP显然我引用的链接中的语法是错误的,我的 SQL 有点生疏,所以我会查看您发布的教程链接。
    猜你喜欢
    • 1970-01-01
    • 2021-09-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-08
    相关资源
    最近更新 更多