hier meine HQL-Abfrage ist:Java: Parameter existieren nicht als benannte Parameter
buffer = new StringBuilder();
buffer.append("SELECT R ");
buffer.append("FROM " + getEntityClassName() + " R ");
buffer.append("LEFT JOIN E.debit D ");
buffer.append("LEFT JOIN E.etablissement E ");
buffer.append("WHERE D.id = :idDebit ");
buffer.append("ORDER BY R.periodeDebut DESC ");
hqlQuery = session.createQuery(buffer.toString());
hqlQuery.setInteger("idDebit", idDebit);
ich diesen Fehler hätte:
java.lang.IllegalArgumentException: Parameter idDebit does not exist as a named parameter in [SELECT R FROM fr.gouv.finances.douane.gimt.dao.base.commun.impl.DebitReventeDaoImpl R LEFT JOIN E.debit D LEFT JOIN E.etablissement E WHERE D.id = :idDebit ORDER BY R.periodeDebut DESC ]
Wenn ich den setInteger von setParameter("idDebit", idDebit)
ändern, ich erhielt Dieser Fehler:
org.hibernate.QueryParameterException: could not locate named parameter [idDebit]
wenn ich es auch so ändern:
WHERE D.id = ?
setParameter(0, idDebit)
Ich habe diesen Fehler:
org.hibernate.QueryParameterException: Position beyond number of declared ordinal parameters. Remember that ordinal parameters are 1-based! Position: 1
Dankten für Ihre Hilfe
ich es versucht habe, habe ich den gleichen Fehler: 'code'Position über die Anzahl der deklarierten ordinalen Parameter hinaus. Denken Sie daran, dass Ordinalparameter 1-basiert sind! Position: 2 – Pasja95
fr.gouv.finances.douane.gimt.dao.base.commun.impl.DebitReventeDaoImpl .. ist das eine Entität? Wenn ja, fügen Sie bitte den impl Code –
Thanks @MaciejKowalski, die Entität ist DebitReventeMod, ich ändern es und es funktioniert – Pasja95