Archief - mysql zoeken op een object, hoe?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

Mikey_1

Legacy Member
hallo

ik zit vast met een sql namedquery


mijn entity class heeft een Klant klantenNr.


Hoe kan ik nu zoeken op klantenNr?

Code:
@NamedQuery(name = "klant.finyByKlantNr", query = "SELECT b FROM Klant b WHERE b.klantenNr= :klantenNr")


als ik een getal meegeef, (bijv : 5) vind hij niets, dit omdat klantenNr een object is (en geen int,...)

Hoe kan ik zoeken op klantenNr?

ik dacht hetvolgende:
Code:
@NamedQuery(name = "klant.finyByKlantNr", query = "SELECT b FROM Klant b WHERE b.Klant.klantenNr= :klantenNr")

maar dit werkt ook niet..

De Wouter

Legacy Member
Kan je klantenNr niet omzetten naar int alvorens in de query te steken?

Mikey_1

Legacy Member
klantenNr is een int (ik zoek op klantenNr, bijv: 3 )

maar ik moet een lijst krijgen van bijv: alle facturen van een bepaald klantenNr

maar deze klantenNr is een object , ik moet dus klantenNr zoeken in het object Klanten (dus ik denk iets zoals : Klanten.klantenNr) maar hoe wordt dit gedaan?

nu krijg ik elke keer deze fout =>
java.lang.IllegalArgumentException: Parameter value [3] did not match expected type [entities.Klanten]

Saryon

Legacy Member
Het zou al enorm helpen als je het object in kwestie laat zien. Wat voor een object is klantenNr?
In principe zou je iets kunnen a la "SELECT b FROM Klant b WHERE b.klantenNr.value = :klantenNr" waarbij dan 5 als int met naam value in het klantenNr object zit.

passero

Legacy Member
Uit bovenstaande query lijkt het alsof object Klant een attribuut klant heeft.
Dit lijkt me op zich zeer raar...

Laat idd wat meer zien van hoe uw objecten zijn en hoe ze gelinkt zijn.

Mikey_1

Legacy Member
edit=

het is me gelukt (eindelijk!!)
ik moest eerst met het klantennr de klant opzoeken en pas daarna kon ik de query gebruiken.

mag slotje op ;)

SomeDude

Legacy Member
Mikey_1 zei:
edit=

het is me gelukt (eindelijk!!)
ik moest eerst met het klantennr de klant opzoeken en pas daarna kon ik de query gebruiken.

mag slotje op ;)


Mss moet je bij de basis beginnen, dees heeft niets met mysql te maken want werkt op elke databank !
Volgens mij (met uw beperkte & verwarrende info) klopt er iets niet aan uw relaties tussen uw objecten.
Uw 'Klant' heeft wss een One-To-Many relatie met facturen, dus als je uw klant ophaalt kan je ineens een collectie van facturen mee laden (eager).
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan