Quiero ejecutar mi consulta HQL como este:

Query queryPayment=sixSession.createQuery("from Payment where vcode=:p_Vcode or (Installment_Vcode=:installmentVcode and payment_date>:pdate) order byvcode."+order +"desc")
        .setParameter("p_Vcode", p_Vcode)
        .setParameter("installmentVcode", installmentVcode)
        .setParameter("pdate", pdate);

pero no reconoce +order+
Necesito la cláusula order by.

parece que te falta un espacio antes de «desc», debería ser «desc»

OriginalEl autor AFF | 2012-05-29

1 Comentario

  1. 27

    aparece que tengo que poner el «orden» en el HSQL consulta, pero con un espacio:

    "from Payment where vcode=:p_Vcode or (Installment_Vcode=:installmentVcode and
    payment_date>:pdate) order by vcode desc"
    No, se devuelve un error:
    el error es: org.hibernate.hql.ast.QuerySyntaxException: testigo inesperado: orden cerca de la línea 1
    He probado esta consulta:Consulta queryPayment=sixSession.createQuery(«from Pago donde vcode=:p_Vcode o (Installment_Vcode=:installmentVcode y payment_date>:pdate) orden por vcode .» +orden+» desc») y el error es:Error de invocar la Acción usando Hibernate Core Sesión / inyección de Transacciones org.hibernate.hql.ast.QuerySyntaxException: testigo inesperado: orden cerca de la línea 1, columna 127 [de la información.Pago donde vcode=:p_Vcode o (Installment_Vcode=:installmentVcode y payment_date>:pdate) orden por vcode orden por vcode desc] en org.hibernate.hql.ast.QuerySyntaxException.convertir(QuerySyntaxExc
    trate de la consulta de mi respuesta en su lugar.

    OriginalEl autor Alex Stybaev

Dejar respuesta

Please enter your comment!
Please enter your name here