AppSensei
AppSensei

Reputation: 8400

Hibernate Exception: Not all named parameters has been set

I'm getting this exception:

org.hibernate.QueryException: Not all named parameters have been set: [dua_num] [SELECT rev FROM DUA_AUD WHERE dua_num = :dua_num SELECT rev FROM DUA_DATA_FIL_AUD WHERE dua_num = :dua_num1]
    at org.hibernate.internal.AbstractQueryImpl.verifyParameters(AbstractQueryImpl.java:401)
    at org.hibernate.internal.SQLQueryImpl.verifyParameters(SQLQueryImpl.java:195)
    at org.hibernate.internal.SQLQueryImpl.list(SQLQueryImpl.java:134)
    at com.envers.EnversTest.getAllRevisions(EnversTest.java:249)
    at com.envers.EnversTest.main(EnversTest.java:56)

Java Method

public void getAllRevisions() {

    Session session = factory.openSession();
    Transaction tx = null;

    try {

    String sql = "SELECT rev FROM DUA_AUD WHERE dua_num = :dua_num"
            + "SELECT rev FROM DUA_DATA_FIL_AUD WHERE dua_num = :dua_num1"
            + "union all"
            + "SELECT rev FROM DUA_STUS_AUD where DWHERE dua_num = :dua_num2"
            + "union all"
            + "SELECT rev FROM DATA_PYMT_AUD where WHERE dua_num = :dua_num3"
            + "union all"
            + "SELECT rev FROM DUA_SPLMT_DOC_AUD where WHERE dua_num = :dua_num4"
            + "union all"
            + "SELECT rev FROM ORG_PRTNRSHP_AUD where WHERE dua_num = :dua_num5";

    SQLQuery query = session.createSQLQuery(sql);
    query.setParameter("dua_num1", 1);
    query.setParameter("dua_num2", 1);
    query.setParameter("dua_num3", 1);
    query.setParameter("dua_num4", 1);
    query.setParameter("dua_num5", 1);
    List<Number> results = query.list();

    for (Number number : results) {
        System.out.println("Results: " + number);
    }

    } catch (HibernateException e) {
        e.printStackTrace();
    }
}

Upvotes: 0

Views: 739

Answers (1)

user1888014
user1888014

Reputation: 157

I see two errors in your sql query: (1) you have omitted a 'union all' between the first and second line (2) The first parameter 'dua_num' in the first line is not set

Upvotes: 1

Related Questions