begin process at 2012 05 28 08:47:03
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

IIS et l'ASP

 > 

recordset : MoveNext ou pas?


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

recordset : MoveNext ou pas?

jeudi 27 septembre 2001 à 11:53:27 | recordset : MoveNext ou pas?

nas

Salut a tous,

Voila mon problerme! En fait c'est pas reellement un probleme mais je cherche plutot une idée...

Dans une page asp je recupere differentes donnees provenant d'une base SQLServer (sur plusieurs tables!) et pour cela j'utilise plusieurs recordsets imbriqués:
je m'explique, par exemple j'utilise un second recordset pour me faire afficher des donnees dependantes des resultats du premier recordset! (je sais pas si je suis clair!!!)

Rellement ce que je voudrais c'est faire avancer mon premier recordset par le biais de boutons 'suivant' et 'precedent' ou plus clairement je voudrais afficher chaque enregistrement de mon premier recordset sur des pages differentes.

Est-ce que je dois utiliser une fonction pour cela?
J'ai essayé une petite fonction dans laquelle je mets un rec.MoveNext du premier recordset mais ça marche pas!

ex:
Recordset 4 depend de Recordset 3
Recordset 3 depend de Recordset 2
Recordset 2 depend de Recordset 1

Et je veux faire avancer Recordset 1, pour que tout s'enchaine derriere!

Est-ce que c'est possible?
Ou sinon quelle methode puis-je utiliser?

Merci a tous!
jeudi 27 septembre 2001 à 13:48:58 | Re : recordset : MoveNext ou pas?

kim

Slt,

Je n'ai pas très bien compris ton pb.
Ok pour les RS imbriquées.
Ne peux tu utiliser INNER JOIN dans ta requête SQL afin de tout récupérer d'un coup?tu augmenteras comme ça la vitesse de chargement de ta page.
Mais si tu fais un traitement sur le résultat du 1er RS, tu seras obligé effectivement de créer un 2nd RS.
Et dans ce cas là, où est le pb dans ta boucle ?
Peux tu en dire plus?

KIM



-------------------------------
Réponse au message :
-------------------------------

Salut a tous,

Voila mon problerme! En fait c'est pas reellement un probleme mais je cherche plutot une idée...

Dans une page asp je recupere differentes donnees provenant d'une base SQLServer (sur plusieurs tables!) et pour cela j'utilise plusieurs recordsets imbriqués:
je m'explique, par exemple j'utilise un second recordset pour me faire afficher des donnees dependantes des resultats du premier recordset! (je sais pas si je suis clair!!!)

Rellement ce que je voudrais c'est faire avancer mon premier recordset par le biais de boutons 'suivant' et 'precedent' ou plus clairement je voudrais afficher chaque enregistrement de mon premier recordset sur des pages differentes.

Est-ce que je dois utiliser une fonction pour cela?
J'ai essayé une petite fonction dans laquelle je mets un rec.MoveNext du premier recordset mais ça marche pas!

ex:
Recordset 4 depend de Recordset 3
Recordset 3 depend de Recordset 2
Recordset 2 depend de Recordset 1

Et je veux faire avancer Recordset 1, pour que tout s'enchaine derriere!

Est-ce que c'est possible?
Ou sinon quelle methode puis-je utiliser?

Merci a tous!
jeudi 27 septembre 2001 à 14:37:05 | Re : recordset : MoveNext ou pas?

nas

Merci d'abord KIM de m'avoir repondu...

Je savais bien que je m'etais mal exprimé!

Voila, en fait mon premier recordset fait appel a une procedure stockée dans une base SQLServer : cette procedure me renvoie deja plusieurs données (avec une jointure sur plusieurs tables), seulement j'ai d'autres données a faire afficher dependantes du resultat de ma requete...c'est pour cela que je fais appel a d'autres recordsets

Quand je veux faire avancer mon 1er recordset avec un MoveNext ça ne marche pas!

Si tu veux et si tu as le temps je peux t'envoyer par mail un copie!
Merci




vendredi 28 septembre 2001 à 11:34:11 | Re : recordset : MoveNext ou pas?

kim

Slt,

Tout d'abord, il est nécessaire de définir ce qu'est un curseur. Le mot anglais "cursor" vient de "CURrent Set Of Rows". Il représente une structure de données qui contient un ensemble d'enregistrements provenant d'un jeu de résultats d'une requête. On peut voir un curseur comme étant un pointeur vers une ligne spécifique de ce jeu de résultats.
Le type du curseur définit la fonctionnalité offerte par le curseur: certains curseurs permettent la navigation en avant et en arrière dans le jeu de résultats, certains curseurs supportent les opérations de mise à jour, d'autres permettent de voir les modifications effectuées dans le jeu de résultats par d'autres utilisateurs.
Le type d'un curseur va déterminer comment les données d'un recordset sont synchronisées avec la base de données. Il existe quatre types de curseurs que nous allons détailler ci dessous. Le type de curseur doit être renseigné dans la propriété CursorType d'un objet Recordset avant son ouverture.
Les différents types de curseur :
adOpenForwardOnly (= 0) En avant seulement (Forward only) par défaut
adOpenStatic (= 3) Statique (Static)
AdOpenKeyset (= 1) Basé sur un jeu de clés (Keyset)
adOpenDynamic (= 2) Dynamique (Dynamic)

Si on utilise un type de curseur autre que le curseur par défaut (qui est le firehose cursor), par exemple en exécutant la méthode Open sur l'objet Recordset, la connexion est rendue disponible dès que les premières données ont été rapatriées, et il n'y a pas de nouvelles connexion ouverte.

Ton problème vient donc de la déclarationd de ton RS
Voici la syntaxe générale avec les options :

Recorset.Open Source, ActiveConnection, CursorType, LockType, Options

Source => Spécifie la source des données : requête SQL, nom de table, objet Command, nom de procédure stockée, chemin URL ou bien vers un fichier.
ActiveConnection => Objet Connection à utiliser pour rechercher les données définies dans la source
CursorType => Type du curseur: adOpenForwardOnly, adOpenStatic, adOpenStatic, adOpenDynamic,
LockType => Type du verrouillage: adLockReadOnly, adLockPessimistic, adLockOptimistic, adLockBatchOptimistic
Options Type de la commande: adCmdTable, adCmdText, adCmdStoredProc, adCmdUnknown.ou type d'exécution : adAsyncExecute, adExecuteNoRecords...

Je pensais qu'un p'tit rappel ferait du bien à tout le monde, moi compris.
Toutes ces info sont dispo sur le site de microsoft, ce n'est pas moi qui les ai inventées!

KIM



-------------------------------
Réponse au message :
-------------------------------

Merci d'abord KIM de m'avoir repondu...

Je savais bien que je m'etais mal exprimé!

Voila, en fait mon premier recordset fait appel a une procedure stockée dans une base SQLServer : cette procedure me renvoie deja plusieurs données (avec une jointure sur plusieurs tables), seulement j'ai d'autres données a faire afficher dependantes du resultat de ma requete...c'est pour cela que je fais appel a d'autres recordsets

Quand je veux faire avancer mon 1er recordset avec un MoveNext ça ne marche pas!

Si tu veux et si tu as le temps je peux t'envoyer par mail un copie!
Merci







Cette discussion est classée dans : recordset, differentes, premier, movenext, depend


Répondre à ce message

Sujets en rapport avec ce message

recordset sur Interdev [ par björk ] Je voudrais récupérer d'une base l'adresse de tous les individus s'appelant par exemple "Durand".L'utulisateur doit taper le nom "Durand" dans un text Recordset [ par björk ] Bonjour,Cela présente-t-il des inconvénients de mettre plusieurs recordset sur une même page? Création d'enregistrement [ par websinh ] Salut, encore un ptit poble voici quand je veux ajouter un enregistrement un message d'erreur vien en disant : ADODB.Recordset error '800a0cb3' Curren compter les records d'1 recordset [ par donde ] Je cherche un moyen de compter le nombre d'enregistrements contenu dans un recordset.Je ne veux pas utiliser 'recordCount'.Existe t-il autre chose ??? probleme recordset!!! help [ par peguman ] Je veux me connecter à une base mais quand je fais :sql1="SELECT * FROM client WHERE Login = '"& strlogin &"' AND Password = '"& strpass &"' "Set RS = probleme recordset!!! help [ par peguman ] Je veux me connecter à une base mais quand je fais :sql1="SELECT * FROM client WHERE Login = '"& strlogin &"' AND Password = '"& strpass &"' "Set RS = déplacement dans recordset [ par daniel ] comment fait-on pour se positionner à un endroit précis dans un recordset? Ex: j'ai le numéro d'un enregistrement et je voudrais pointer dessus...merc déplacement d'un enregistrement dans un recordset [ par rw72000 ] Alors voilà ce que je veux faire : J'ai un recordset dans lequel j'ai des enregistrements (jusque là ça tient la route).Je prend ces enregistrements e déplacement d'un enregistrement dans un recordset [ par rw72000 ] Alors voilà ce que je veux faire : J'ai un recordset dans lequel j'ai des enregistrements (jusque là ça tient la route).Je prend ces enregistrements e Rafraichissement de formulaire [ par rw72000 ] J'ai sur ma page asp un formulaire avec des boites et des listbox.En dessous j'ai un autre formulaire qui sert à poser un filtre sur la base de donnée


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,328 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales