【问题标题】:How do I use a parameter in a query如何在查询中使用参数
【发布时间】:2014-04-26 13:44:23
【问题描述】:

错误:org.hibernate.QueryException:无法解析属性:codigo

代码如下:

System.out.println("Codigo del curso que quiere consultar las matriculas");
codigo = intSc.nextInt();
Cursos curso = (Cursos) session.get(Matricula.class, codigo);
Query query1 = session.createQuery("SELECT m FROM Matricula m where m.codigo=codigo");
List<Matricula> matriculas = query1.list();
for (Matricula matricula : matriculas) {
     System.out.println(matricula.toString());
}

我认为问题在于我试图在选择的句子上插入参数,有人知道我可以插入谁吗?

非常感谢您的帮助:D

母系结构

@实体

@Table(name = "矩阵") 公共类矩阵实现可序列化{

@Id
@Column(name = "num_matricula", unique=true)
private int num_matricula;

@ManyToOne
@JoinColumn(name="codigo_curso")
private Cursos curso;

@ManyToOne
@JoinColumn(name="codigo_alumno")
private Alumnos alumno;

新的错误是:org.hibernate.QueryException: could not resolve property: codigo of: Proyecto.Matricula

感谢您的快速回答;)

【问题讨论】:

    标签: mysql hibernate variables select parameters


    【解决方案1】:

    你应该使用这样的语法

        Query query1 = session.createQuery("FROM Matricula where curso=:curso");
        query1.setEntity("curso", curso);
    

    如果您想要实现的是选择具有特定光标的矩阵。

    【讨论】:

    • 我收到了新的错误:( org.hibernate.QueryException: could not resolve property: codigo of: Proyecto.Matricula
    • 根据您提供的信息,我帮不上什么忙。矩阵表的结构是什么?新的错误是什么?
    • 查看我的更新答案。如果它不起作用,请告诉我 Matricula 表的结构是什么。
    • 我用matricula的结构更新了主帖,非常感谢:D
    • 现在看看这是否能解决您想要的问题。如果没有,请告诉我您想要达到的目标,实际上您应该从一开始就告诉我:)
    猜你喜欢
    • 1970-01-01
    • 2020-11-20
    • 2019-07-24
    • 2016-06-17
    • 2018-08-12
    • 1970-01-01
    • 1970-01-01
    • 2021-05-05
    • 2020-04-24
    相关资源
    最近更新 更多