Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
764 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  question stupide... une ligne de RS par son numéro

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

question stupide... une ligne de RS par son numéro

n°1448369
caribou311
Posté le 27-09-2006 à 17:42:12  profilanswer
 

Je cherche une instruction qui permet de consulter le contenu d'une ligne d'un RecordSet à partir de son numéro
(je fais un select qui me remonte 12 résultats je veux lire le 5eme)
 
Genre l'équivalent de rs.Fields mais qui remonte la ligne au lieu de la colonne.
 
Ca fait une heure que je rame dessus, et j'en ai besoin pour pouvoir partir ce soir, help!

mood
Publicité
Posté le 27-09-2006 à 17:42:12  profilanswer
 

n°1448370
MagicBuzz
Posté le 27-09-2006 à 17:43:09  profilanswer
 

rs.Move(5) (à compter que tu est à la première ligne, puisque le "move" est relatif et non absolu)


Message édité par MagicBuzz le 27-09-2006 à 17:43:39
n°1448371
caribou311
Posté le 27-09-2006 à 17:45:33  profilanswer
 

on peut faire un move négatif????
Je dois chopper le 11 après le 7 après le 6 par exemple....

n°1448379
MagicBuzz
Posté le 27-09-2006 à 17:50:02  profilanswer
 

ps: ceci dit, une fois de plus, évite comme la peste ce genre de manips, car les fonctions "avancées" des recordset ne fonctionnent pas toujours correctement selon les versions de ADODB ainsi que du moteur de la base de données.
 
en fait, les seules fonctions dans lesquelles tu peux avoir 100% confiance sont :
 
rs.BOF (il n'y a pas de lignes avant le record courant)
rs.EOF (il n'y a pas de lignes après le record courant)
 
Ainsi, si tu veux savoir s'il n'y a pas de lignes avant de parcourir un rs, tu dois faire :
 

Code :
  1. if not (rs.BOF and rs.EOF) then


 
Plutôt que d'utiliser rs.Count (avec Oracle par exemple, dès que tu as une jointure externe, il te dit "-1" quelque soit le nombre de lignes, c'est pas top)
 
Ensuite :
 
- rs.MoveNext() (avance au prochain record)
- rs.MoveFirst() (après avoir spécifié EXPLICITEMENT que ton rs est dynamique, côté client, et random access, car par défaut il est souvent static, forward only, côté serveur), ce qui sont 3 clauses qui peuvent empêcher le rs.MoveFirst de fonctionner.
 
A banir, car rarement supportés et souvent source de comportements étrange (sans parler des plantages) :
- rs.Move()
- rs.MovePrevious()
- rs.MoveLast()
 
Par contre, dans tous les cas, le rs.Fields est implicite, donc tu peux appeler rs("nomchamp" ) au lieu de rs.Fields("nomchamp" )


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  question stupide... une ligne de RS par son numéro

 

Sujets relatifs
tester si chaine contient un saut de ligne[Résolu] Dbgrid et Tpagecontrol Question bête
[PHP] Afficher derniere ligne d'un fichier texteCompter le nbre de ligne de resultat d'un requete ?
Question sur les types de données de MySQL[MySQL] Question rapide sur efficacité d'une requête
Aide pour site de vente en lignesuppression ou cacher ligne sur bouble infini[résolu]
Facile ... question de précision !!! HELP !Question bête : pourquoi radio bouton ?
Plus de sujets relatifs à : question stupide... une ligne de RS par son numéro


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR