Mit IN-Klausel in eine native sql-Abfrage

Wir versuchen, dynamisch zu generieren, eine IN-Klausel für eine native sql-Abfrage um eine JPA-Entität. Hibernate ist unsere JPA-provider. Unser code sieht ungefähr so aus.

@NamedQuery(
    name="fooQuery",
    queryString="select f from Foo f where f.status in (?1)"
)

....

Query q = entityManager.createNamedQuery("fooQuery");
q.setParameter(1, "('NEW','OLD')");
return q.getResultList();

Dies nicht funktioniert, die in der Klausel nicht erkennen, wie beliebige Werte übergeben, die über diese Weise. Kennt jemand eine Lösung zu diesem problem?

InformationsquelleAutor | 2009-05-06

Schreibe einen Kommentar