Erreur sql en vb

frédéric -  
xthorx_be Messages postés 149 Statut Membre -
Je suis débutant en vb et en sql. Je dois avoir fait une erreur dans le code suivant, je croix que c'est dans ma réquête sql.
Pouvez vous m'aider et m'expliquer ou est ma faute.

Merci

Private Sub CommandButton1_Click()
vNomTravailleur = Textnomtrav.Value

vSQL = "SELECT * from code left join travailleur on travailleur.numtrav = code.numtrav where travailleur.numtrav ='vNomTravailleur'"

ModAccess.connection

vDonnées.MoveFirst
Label3.Caption = vDonnées("code")
If Textcode.Value = vDonnées("code") Then
fenindex.Show
Else
MsgBox ("le code que vous avez inscrit n'est pas le bon, rééssayez.")
End If
End Sub

2 réponses

xthorx_be Messages postés 149 Statut Membre 131
 
Essaie:

vNomTravailleur = Textnomtrav.Value

vSQL = "SELECT * from code left join travailleur on travailleur.numtrav = code.numtrav where travailleur.numtrav =""" & vNomTravailleur & """;"

En fait elle ne marche pas parce que vNomTravailleur est une variable et que toi tu recherches dans la base de données
travailleur.numtrav = "vNomTravailleur" ce qui ne doit pas exister (je ne connais personne qui pourrait avoir un tel nom moi, toi bien?)
0
frédéric
 
et donc si je comprends bien lorsque je veux inclure une variable dans une requête SQL, je dois l'entourer de ""& et de &"".

Je vous remercie pour cette information qui m'évitera encore beaucoup d'erreur.
0
xthorx_be Messages postés 149 Statut Membre 131
 
Oui et non:

si tu as:
dim strNom as string

ta requête devient: "SELECT ... """ & strNom & """...;"

si tu as
dim intVal as integer

ta requête devient: "SELECT ... " & strNom & "...;"

Autrement dis, tu dois mettre des " quand ta variable est définie comme étant une chaine de caractère (et que ton champs est défini comme tel) et pas de " quand il s'agit de valeur chiffrée.

En fait si tu doubles les " (cad ""), n'importe quel langage de programmation le considère comme un ".

J'espère avoir éé clair ;).
0