Hallo,
Ich verwende ein deleted-flag in sämtlichen Tabellen anstatt eines "echten" delete. Dann ist mir aufgefallen dass beim Laden einer Collection auch die "gelöschten" Obejkten mitgeladen werden. Ich bin dann in der Dokumentation auf das where-Attribut gestoßen, bekomme aber eine SQLGrammarException?
Das Problem ist anscheinend dass Hiberate für alle beteiligten Tabellen dynamisch ein Alias vergibt und ich dieses in meiner where-Bedingung nicht kenne. Wie kann ich dann aber auf das deleted-flag der Detailtabelle zugreifen?
Code:
select
equipmentp0_.model_id as model3_1_,
equipmentp0_.text as text1_,
equipmentp0_.equipment_property_id as equipment1_1_,
equipmentp1_.id as id3_0_,
equipmentp1_.title as title3_0_,
equipmentp1_.ranking as ranking3_0_,
equipmentp1_.deleted as deleted3_0_,
equipmentp1_.is_caravan as is5_3_0_,
equipmentp1_.sys_user_id as sys6_3_0_
from
kotep.equipment_value equipmentp0_
left outer join
kotep.equipment_property equipmentp1_
on equipmentp0_.equipment_property_id=equipmentp1_.id
where
equipment_property.deleted = 0
and equipmentp0_.model_id=?
Viele Grüße,
Chris