|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Inscription : février 2006 Messages : 3 ![]() |
Bonjour,
je cherche à faire une procedure stockee qui "construise" dynamiquement une requete SQL (possiblité de choisir les colonne et le tri) puis qui me renvoie N lignes à partir de la position M (fonction LIMIT sous MySQL). Pour faire tout cela, j'utilise un curseur. J'y suis presque arrivé (cf. code ci-dessous) mais ma procedure stockee me renvoie les résultats triés aléatoirement alors que j'ai mis un order dans ma requete. Je m'explique : (je fais un tri sur la col n°1) Si N=3Lignes et M=1erePosition Alors 1, toto, motdepasse1 3, titi, motdepasse3 2, tutu, motdepasse2 Si N=5Lignes et M=1erePosition Alors 1, toto, motdepasse1 3, titi, motdepasse3 5, tete, motdepasse5 2, tutu, motdepasse2 4, tata, motdepasse4 Voilà, ça fait un petit moment que je bloque dessus et je commence à me demander si je vais dans la bonne direction pour résoudre mon problème ou si je me gourre. Merci d'avance pour votre aide. Xavier Code :
|
||
|
|
00
|
|
|
#2 |
![]() ![]() |
Pourquoi ne pas remplacer votre curseur par un TOP ?
http://manuals.sybase.com/onlinebooks/group-sas/awg0800e/dbrfen8/@Generic__BookView;pt=557;lang=fr?DwebQuery=top
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql Administrateur SAP Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums ! |
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : février 2006 Messages : 3 ![]() |
Parce que je souhaite imiter le comportement du LIMIT de MySQL sans utiliser TOP
J'ai trouvé la possiblité de réaliser cette contrainte (cf http://sqlserver.developpez.com/faq/?page=Recordset#JE2). Mais je n'aime pas cette façon de faire |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : février 2006 Messages : 3 ![]() |
J'ai trouvé javascript:emoticon('
L'erreur venais de moi (comme toujours). Je pensais que lorsque l'on stockait le résultat d'un curseur dans une table, il stocké les data dans l'ordre de lecture du curseur. Et bien, c'est faux!!! Pour résoudre mon probleme, j'ai ajouté à ma table une colonne autoincremnet et j'ordonne ma table grace a cette colonne. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com