| 

.NET C# Java Javascript Exception

Problem mit HQL Query

Dies ist das Archiv des ehemaligen Forums zum Thema Groovy, Grails, Griffon und Bean Scripting Framework, welches unter groovy-forum.de existierte. Die neue Adresse des Groovy-Forums ist: http://codekicker.de/fragen/themen/groovy.


Problem mit HQL Query

MrT - 18.12.2008 22:43
hallo,

ich habe folgendes Problem. Ich habe ein vorgegebenes SQL Query, was in der Form auf meiner Datenbank auch funktioniert:
select * from grundstueck where id in (select grundstueck_ansprechpartner_id from grundstueck_person where person_id=6) or id in (select grundstueck_bewirtschafter_id from grundstueck_person where person_id=6) or id in (select grundstueck_paechter_id from grundstueck_person where person_id=6) or id in (select grundstueck_besitzer_id from grundstueck_person where person_id=6);

wobei die 6 ein Testwert ist um das ganze auf der Konsole testen zu können.

Dieses Query möchte ich nun in HQL aus meinem Grails Programm aufrufen. Das sollte ja so aussehen:
 def res = Grundstueck.executeQuery("from $Grundstueck.name where id in (select grundstueck_ansprechpartner_id from grundstueck_person where person_id=:personid) or id in (select grundstueck_bewirtschafter_id from grundstueck_person where person_id=:personid) or id in (select grundstueck_paechter_id from grundstueck_person where person_id=:personid) or id in (select grundstueck_besitzer_id from grundstueck_person where person_id=:personid)",['personid':tmpPerson.id])

damit bekomme ich die Fehlermeldung:
Zitat

Caused by: org.springframework.orm.hibernate3.HibernateQueryException: grundstueck_person is not mapped ...

es sieht also so aus als bräuchte ich für grundstueck_person ebenfalls den vollen namen (wie $Grundstueck.name). Mein Problem ist aber das ich gar keine Domain für die Tabelle habe.
In Grundstueck gibt es die entsprechenden hasMany für die 4 verschiedenen Personen, da die Personen aber mehreren Grundstücken zugeordnet werden müssen besteht in der Person Tabelle keine Abhängigkeit zu den jeweiligen Grundstücken.
D.h. die grundstueck_person Tabelle wird von Hibernate automatisch generiert und enthält nur die einzelnen IDs zur Zuordnung. Wie kann ich eine solche Tabelle für HQL mappen?

Ich habe diesen Thread ergoogled : [markmail.org] Direktes SQL wäre natürlich eine Alternative, aber erstens wäre mir HQL lieber und zweitens habe ich keine Ahnung wie ich hier die Werte aus der DataSource.groovy übernehmen kann.


Stelle deine Groovy-Frage jetzt!


Diese Seite zeigt den Thread "Problem mit HQL Query" der ehemaligen Webseite groovy-forum.de, welche durch einen Serverunfall zerstört wurde. codekicker.de hat viele Konversationen über die beliebte Programmiersprache Groovy und zugehörige Frameworks wie das Grails-Framework retten können.

Hast Du eine Frage zum Thema Groovy, Grails oder allgemein Java? Viele ehemalige groovy-forum.de Mitglieder beantworten dir auf codekicker.de deine Frage! Stelle jetzt eine Frage!

Viele weitere Diskussionen zu Grails und Groovy befinden sich auf der Threadübersicht des alten groovy-forum.de.