title image


Smiley (Versant) JDO generiert falsche SQL-Statements
Hallo zusammen,



Ich nutze MySQL (was allerdings für JDO ja angeblich egal sein soll).

Nun habe ich eine Struktur erzeugt (siehe Anhang).

"groupAffiliation" im Objekt Metadatamanager und im Objekt Usermanager sind jeweils Arrays vom Typ Groupmanager.



Anschließend habe ich User angelegt, Gruppen und Metadaten.

Einzeln lässt sich auch alles abfragen.



Jetzt stellt sich folgendes Problem:

Ich frage einen User ab und möchte die Metadaten zurück bekommen, die den Gruppen zugeordnet sind, denen auch der User zugeordnet ist.



JDO generiert folgendes Statement daraus:



SELECT

DISTINCT a.metadatamanager_id,

a.beschreibung,

a.editor_type,

a.field_name,

a.field_type,

a.objekt_name,

a.ordering,

a.visibility,

a.jdo_version

FROM metadatamanager a

INNER JOIN metadatamanager_groupmanager AS b

ON (a.metadatamanager_id = b.metadatamanager_id AND b.groupmanager_id ?,?,? = ? )



Das korrekte Statement wäre aber in dem Fall:

SELECT

DISTINCT a.metadatamanager_id,

a.beschreibung,

a.editor_type,

a.field_name,

a.field_type,

a.objekt_name,

a.ordering,

a.visibility,

a.jdo_version

FROM metadatamanager a

INNER JOIN metadatamanager_groupmanager AS b

ON (a.metadatamanager_id = b.metadatamanager_id AND b.groupmanager_id IN (?,?,?) )



Hat jemand eine Idee, wie das kommt?
zieladresse.de - neugierig?

geschrieben von

Anhang
Bild 99 zu Artikel 32855

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: