SQL queries do not currently support iteration

bladepit

Bekanntes Mitglied
Hey an alle,

folgender Code:

Java:
query = "SELECT * FROM HTS.ALL_RSC_DATA WHERE SUBST_ID = '" + value + "'";
			SQLQuery sql = session.createSQLQuery(query);
			Iterator<ALL_RSC_DATA> q = sql.iterate();
			while(q.hasNext()){
				Object item = q.next();
				//ALL_RSC_DATA d = (ALL_RSC_DATA) item;
				System.out.println("Adding");
				//data.add(item);
			}

und folgenden Fehlermeldung: SQL queries do not currently support iteration.

Aber nach den Tutorial geht das so. Weiß einer warum das nicht geht bzw. warum die Fehlermeldung kommt?

Gruß

bladepit
 

faulelotte

Mitglied
Ich würde sagen, du bist über einen schon bekannten Hibernate Bug gestolpert. HHH-3081 SQL queries do not currently support iteration


Allerdings könntest du ein wenig umformulieren unter anderem um SQL Injection zu vermeiden ;)
Java:
query = "SELECT * FROM HTS.ALL_RSC_DATA WHERE SUBST_ID = :value";
Query hQuery = session.createQuery(query);
hQuery.setParameter("value", value);
List result = hQuery.list();

Iterator iterator = result.iterator();

while (iterator.hasNext()) {
    Object[] row = (Object[])iterator.next();
    for (int col = 0; col < row.length; col++) {
        System.out.println(col[i]);
    }
}
 

Ähnliche Java Themen

Neue Themen


Oben