Pbm de requete SQL avec ado

cs_besy Messages postés 9 Date d'inscription vendredi 4 octobre 2002 Statut Membre Dernière intervention 28 octobre 2002 - 4 oct. 2002 à 12:34
PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007 - 5 oct. 2002 à 19:26
bonjour,
je debute en VB, voila mon pb:
je veux recuperer une valeur selectionner dans une combo box et si cette valeur est egale a une entree de la table alors ecrire ds la listbox une valeur de cette table:
exemple:selectionne un nom de société de la combobox,si cette societe a une commande ds la table commande ecrire le numero de commande ds la listbox.
ds mon code c un test si la valeur de la combobox = une entree ds la table client alors m'afficher le code client.
merci de votre aide
Dim cnxado As ADODB.Connection
Dim rsADO, rsado2 As ADODB.Recordset
Dim cmdADO As ADODB.Command
Dim temp As String
Set cnxado = New ADODB.Connection
cnxado.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Program Files\Microsoft Visual Studio\VB98\nwind.mdb;Persist Security Info=False"
cnxado.Open
Set cmdADO = New ADODB.Command
cmdADO.CommandType = adCmdText            cmdADO.CommandText "select * FROM clients WHERE [societe] " & Combo1.Text & ""
  cmdADO.ActiveConnection = cnxado
Set rsADO = cmdADO.Execute
 rsADO.MoveFirst
Do Until rsADO.EOF 
List1.AddItem rsADO![code client]
loop
rsADO.Close
cnxado.Close

4 réponses

PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007
4 oct. 2002 à 15:23
a première vue il y a un pb dans ta requete sql :
"select * FROM clients WHERE [societe] " & Combo1.Text & ""

en sql pour chercher une chaine de caractère il faut encadrer cette chaine par des '
ta requete devient :

"select * FROM clients WHERE [societe] <'>" & Combo1.Text & "<'>"
(supprime les inférieur supérieur ils sont juste là pour te montrer l'apostrophe.)
autrement dit sans les <> (tu devras avoir exactement ça)
"select * FROM clients WHERE [societe] '" & Combo1.Text & "'"
voilà @+
0
cs_besy Messages postés 9 Date d'inscription vendredi 4 octobre 2002 Statut Membre Dernière intervention 28 octobre 2002
4 oct. 2002 à 20:15
merci ca marche maintenant par contre y a un pbm si la chaine de caractere contien un '
0
cs_raff Messages postés 182 Date d'inscription dimanche 18 août 2002 Statut Membre Dernière intervention 5 janvier 2004 3
5 oct. 2002 à 05:35
tu remplaces le ' par le chr() correspondant (scuse je sais pas par coeur, c'est autour de 40) avec des & avant et après.
0
PatriceVB Messages postés 562 Date d'inscription dimanche 16 décembre 2001 Statut Modérateur Dernière intervention 26 décembre 2007
5 oct. 2002 à 19:26
tu n'as qu'a rechercher les ' dans tes champs et les doubler pour ne pas avoir de problème.
@+
0
Rejoignez-nous