Bonjour,
J'ai une requete sql qui me charge 5000 enregistrement. Est il possible de de faire une requete qui me charge une liste 500 que j'affiche dans une page et quand je change de page, je veux charger les 500 suivant, ainsi de suite?
Merci
Bonjour,
J'ai une requete sql qui me charge 5000 enregistrement. Est il possible de de faire une requete qui me charge une liste 500 que j'affiche dans une page et quand je change de page, je veux charger les 500 suivant, ainsi de suite?
Merci
Bonjour,
Oui c'est possible en utilisant la clause Rownum
Ex:
select * from table where rownum > 500;
Il s'agit sans doute d'une faute de frappe, mais rappelons que "WHERE ROWNUM > n" (n étant positif) ne ramènera aucun résultat.Envoyé par Thierry&Manon
On doit utiliser ROWNUM en testant s'il est inférieur à la limite voulue.
Oui, sorry faute de frappe.
Je prendrai plus de temps la prochaine fois pour repondre.
Face a une utilisation web, le rownum ne repondra que partiellement a la question. Il faudra cacher, d'une maniere ou d'une autre les informations, soit sur le middle tier ou sur le db tier, pour que l'utilisateur ait une vision consistance des donnees lorsqu'il navigue d'une page a la suivante (ou la precedente). En d'autres termes, dans le cas d'une fonction de recherche, si un nouvel enregistrement repondant aux criteres de selection est insere dans la table, il ne sera affiche lors de ces navigations que si l'utilisateur re-initialise une nouvelle recherche.
Il me semble que se pb ne depent pas de la requetes mais de la facon dont ton interface gere les données.
Qu'est ce que tu utilise pour visualiser le resulta de ta requete???
Peut être existe t'il un moyen ou paramétre qui ne te renverra que 500 enregistrement.
Pour ma part, la mise en page et les requetes c'est 2 choses complétement différentes.
Partager