Stocker le résultat d'une requête SQL dans une variable en VB6

Résolu
ti_flo Messages postés 15 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 24 mai 2007 - 23 févr. 2007 à 15:20
ti_flo Messages postés 15 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 24 mai 2007 - 25 févr. 2007 à 12:00
Bonjour à tous.

Après plusieurs recherches sur Google, mon ami de toujours et sur ce même
forum, j'ai vu que le sujet avait déjà été traité plusieurs fois. Mais je n'ais
pas trouver comment faire pour stocker le résultat d'une requête SQL dans une
variable VB (ou plutôt, je n'ai  pas été assez doué).

DIM i As Integer

DIM numuser As Integer


rs_sql = "INSERT INTO utilisateur (nom, prenom, datenaiss, mail, ville,
cp, rue, type) VALUES ('" & chps(0) & "', '" &
chps(1) & "', " & chps(2) & ", '" & chps(3)
& "', '" & chps(4) & "', " & chps(5) &
", '" & chps(6) & "', " & chps(7) &
");"

connex.Execute rs_sql


rs_sql = "select iduser from utilisateur where nom='" & chps(0)
& "' and prenom='" & chps(1) & "';"

connex.Execute rs_sql

La je voudrais stocker la valeur récupérer de iduser (de type Integer) dans ma variable  numuser, pour pouvoir l'utiliser dans
une requête suivante.


J'ai essayer;

numuser = rs_sql!iduser

mais il me dit qu'un objet est nécessaire, alors j'ai essayé;


rs.open (rs_sql), execute

numuser = rs!iduser
mais ici, même erreur.


Donc je fais appel à vous, car je souhaiterais une méthode pour stocker la valeur de
iduser dans ma variable numuser, avec s'il vous plait des explication sur son
fonctionnement, pour que je puisse la comprendre et l'utiliser à nouveau plus
tard.


Je vous remercie d'avance de votre aide et vous souhaite une bonne journée.



Amicalement Ti_flo

6 réponses

cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
24 févr. 2007 à 17:16
Oups, désolé...
Il faut changer rs_Sql par Rs tout court.
Rs étant ton objet Recordset et rs_Sql étant seulement la chaîne de requête

Donc,
rs_sql = "select iduser from utilisateur where nom='" & chps(0) & "' and prenom='" & chps(1) & "';"
Rs.Open  rs_sql, connex   'ici tu peux mettre différentes options
If Rs.Recordcount > 0 then
NumUser = Rs!IdUser
Else
Msgbox "Aucun enregistrement trouvé"
end if

MPi
3
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
23 févr. 2007 à 15:44
Salut,

En requête je pige rien...Par contre le résultat de ta requête ce trouve dans rs_sql, je fairai un truc du genre :
numuser = rs_sql
A savoir qi ta requête te renvois bien un integer..

A+
Exploreur
0
ti_flo Messages postés 15 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 24 mai 2007
23 févr. 2007 à 17:44
Bonjour Exploreur.
Malheureusement j'ai déjà essayé cela, mais la valeur ainsi obtenue est toujours de 0.
La requête fonctionne bien je l'ai testé grâce à PHPMyAdmin et elle me retourne une seule et unique valeur, valeur qui est en entier donc en integer.
Merci.

Amicalement Ti_flo
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
23 févr. 2007 à 23:58
Essaie ceci

Après ta requête:
If Rs_Sql.Recordcount > 0 then
NumUser = Rs_Sql!IdUser
Else
Msgbox "Aucun enregistrement trouvé"
end if

MPi
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ti_flo Messages postés 15 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 24 mai 2007
24 févr. 2007 à 16:08
Bonjour Mpi, désolé pour le retard je n'était pas chez moi. J'ai essayé ta méthode mais lors de l'execution il y'a "un objet est requis". Le problème c'est que je ne vois pas du tout de quel objet il s'agit, une déclaration? :(
Je crois savoir qu'il faut fouiller le recordset mais je ne sais pas comment m'y prendre.
0
ti_flo Messages postés 15 Date d'inscription jeudi 27 avril 2006 Statut Membre Dernière intervention 24 mai 2007
25 févr. 2007 à 12:00
Merci beaucoup pour ton aide MPI. Ta méthode fonctionne, je peux donc avancer dans mon projet. Encore merci pour ta nouvelle aide ;)

Bonne journée.

Amicalement Ti_flo
0
Rejoignez-nous