Zacatecnicky dotaz jak dostat do JPQL inner join on...
Petr Fejfar
petr.fejfar na seznam.cz
Pondělí Září 21 17:26:55 CEST 2009
Dne Mon, 21 Sep 2009 17:11:15 +0200 Rastislav Siekel <siekel na prosoft.sk>
napsal/-a:
>> Znamena to, ze to bez doplneni stare tabulky
>> o vazbu @ManyToOne nejde?
> Presne tak. (Len pre istotu - nedopĺňaš väzbu do tabuľky, len do jej
> mapovania. Žiadna fyz. väzba tam byť nemusí.)
No tak tomu prestavam rozumet:
* puvodne jsem mel @OneToMany AppUser.subscription,
coz fyzicky udelalo join table user_subscription s id zazanmu
* kdyz jsem doplnil @ManyToOne Subscription.user abych mel
obousmernou asociaci, tak mi to fyzicky pridalo foreign key
do tabulky subscription, i kdyz by nemelo/nemuselo,
protoze vse potrebne ma v te join table
* kdyz jsem zkousel vnutit mu tu existujici join table
jejim specifikovanim pomoci @JoinTable, tak hbm2ddl
narazil na nejake FK constraints - nevim, co s tou tabulkou
join table chtel udelat, tak jsem prozatim rezignoval
a nechal tam ten FK.
>> A proc mi nejde to odzkousene SQL te nenapada?
> To bude asi niečo triviálne - v mapovaní existuje h.id, ale v tom
> SELECT-e nie je v select-liste, alebo niečo podobné.
To je mozne, ale nic takoveho nevidim. Vsude pouzivam kvalifikovane
odkazy s aliasy tabulek a result set mam:
sql.append("select h.*");
> P.S. Len na okraj - nemaž z mailu pôvodné texty - je to rýchlejšie ako
> pozerať sa do starých mailov, aký vlastne bol pôvodný SQL... :-)
To slysim/ctu poprve - vetsinou se chce, aby se psalo bez nabodenicek
a quotovalo. U toho bych zustal, ale priste tam ten SQL sam znovu
zkopiruju.
Diky, pf
Další informace o konferenci Konference