Requete SELECT : texbox et visual basic [Résolu]

Signaler
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009
-
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009
-
Bonjour,
je possède 2 tables qui ont une relation :
   - table1  : n°, nom, prenom, n°code
   - table2 : n°code, nomCode

j'affiche les champs n°, nom, prenom et n°code de table1 dans des textbox avec un data.
je souheterais pouvoir dans un autre textbox pouvoir afficher le nomCode en relation avec le n°code de table1 et qu'il se mette à jour à chaque fois que je change avec mon data.

Voici mon code :
<code>
  Dim cmd As ADODB.Command
  Dim bds As Database
   Dim sql As String
  Dim Rec As ADODB.Recordset

 Set bds = OpenDatabase("C:\...\maBase.mdb")
  sql = "SELECT * from table2 where 'n°code=&n°code.Text' "
   With bds.OpenRecordset(sql)
   If .EOF Then
        nomCode.Text = "NON TROUVE!"
    Else
        nomCode.Text = .Fields("nomCode").Value
    End If
    .Close
    End With
    bds.Close

J'ai regardé plusieurs tutoriels mais je vois pa bien comment faire.
Si il y a un autre moyen pour récupérer une valeur par une requête SELECT et pouvoir l'afficher dans une textbox merci de me le dire.

Merci pour les réponses

10 réponses

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
et ho !

je t'ai filé la requète corrigée....
j'ai viré le textbox de la chaine, j'ai ajouté son contenu a la suite de celle-ci (subtile nuance)

disons que si ta textbox contient 12345

avec ton code du début, tu lancerais la requete
SELECT * from table2 where 'n°code=&n°code.Text'

et avec la nouvelle requete, tu executerais :
SELECT * from table2 where `n°code`=12345

ce qui est tout de même mieux, non ?
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
les quotes ' doivent etre DANS la chaine SQL ....

sql = "SELECT * from table2 where `n°code`= '" & n°code.Text & "' "
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
le textbox ne doit pas faire partie de la requete :

sql = "SELECT * from table2 where `n°code`=" & n°code.Text
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

la textbox qui est dans ma requête a pour valeur le n°code dans ma table1 et c'est en fonction de sa valeur que  nomCode change.
Sinon je sais pas comment faire pour ma requete pour arriver à ce que je veux.
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

Dsl j'avais pas fait gaffe à la différence, mais avec cette syntaxe sa me donne une erreur comme quoi l'opérateur est absent dans l'expression '`n°code`='
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

En faite sa marche très bien je te remercie .
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

ReBonjour, je possède toujours la même base mais j'ai un autre souci qui se rapproche de celui d'avant.
je voudrais savoir comment faire la même requête mais le n°code est une CHAINE DE CARACTERE et NON un ENTIER.


sql = "SELECT * from table2 where `n°code`=" & n°code.Text

Merci


 
Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
ajoutes des ' pour délimiter la valeur
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

Merci, mais si je délimite la valeur comme ceci :
sql = "SELECT * from table2 where `n°code`="  '&  n°code.Text'
 sa me la met en commentaire.
Messages postés
95
Date d'inscription
jeudi 7 mai 2009
Statut
Membre
Dernière intervention
3 juillet 2009

Merci bien