Bonjour,
Une possibilité pour faire limiter le résultat d'une requête HQL est :
query.setMaxResults(XXX).
J'utilise Sybase ASE 15.0.2 avec le driver jconnect-6.0 (jconn3.jar).
Lors de l'exécution d'une requête HQL avec un query.setMaxResults(500), j'obtiens dans mes logs la requête suivante :
Hibernate: select codepostal2_.codePostal as col_0_0_, villebean1_.nom as col_1_0_, codepostal2_.id as col_2_0_, villebean1_.id as col_3_0_ from nsicm.dbo.Ville_Cp villecpbea0_ left outer join nsicm.dbo.Ville villebean1_ on villecpbea0_.villeId=villebean1_.id left outer join nsicm.dbo.CodePostal codepostal2_ on villecpbea0_.cpId=codepostal2_.id where (villebean1_.nom like ?) and (codepostal2_.codePostal like ?)
Je n'ai pas de trace de "select top 500" ou autre m'indiquant la bonne utilisation du query.setMaxResults.
Est ce un problème de version du driver ?
Je voudrais m'assurer que la limitation à 500 résultats s'effectue lors de la requête et non après l'exécution de la requête. Quand est il ?
Merci d'avance.
Julien
|