Aide sur un pb de recordset

ccamp Messages postés 3 Date d'inscription mercredi 8 décembre 2004 Statut Membre Dernière intervention 7 janvier 2005 - 6 janv. 2005 à 13:03
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 - 7 janv. 2005 à 16:23
Voila a l aide d une requette je recupere un numero(idproc) qui est stocke dans une table comprennant(numero, nom du fichier, et son chemin)
je recupere dans une listbox de facon automatique les chemins et je les passe en parametre ds ma requete

cmd.CommandText = "select idproc from tableproc where chemin='" & List2.List(j) & "' "
Set rs3 = cmd.Execute

le probleme c qu avec certains chemins recuperés via "list2.list(j)" me font une erreur kan ils sont places en parametre dans ma requete:

erreur de syntaxe (operateur absent) dans 'chemin=.........................................

j arrive pas a trouve quelle syntaxe dans le chemin genere l erreur si qqn a une idee merci d avance

7 réponses

cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
6 janv. 2005 à 13:22
as tu des chemins avec des cararcatéres ' ou " dedans ??

It@li@
0
cs_trabice Messages postés 328 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 24 novembre 2005 1
6 janv. 2005 à 13:26
j a kel valeur?
0
cs_trabice Messages postés 328 Date d'inscription mercredi 26 novembre 2003 Statut Membre Dernière intervention 24 novembre 2005 1
6 janv. 2005 à 13:26
List2.List(j) a bien la bonne valeur?
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
6 janv. 2005 à 13:31
dans ta base de donnéés as-tu des chemins avec ' ou " ???

ex: C:\Program Files\l'dsfdf\dsfd\

It@li@
0

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

Posez votre question
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
6 janv. 2005 à 21:13
OK avec ITALIA
Si tu as des quotes (apostrophes) dans ton chemin essaie :

replace(List2.List(j), "'", "''") à la place de List2.List(j)

Si tu as des guillemets dans ton chemin essaie :

replace(List2.List(j), """", """""") à la place de List2.List(j)

C'est sûr pour les apostrophes mais pour les guillemets, c'est à tester, perso, g pas les cas.

Cordialement, CanisLupus
0
cs_ITALIA Messages postés 2169 Date d'inscription vendredi 20 avril 2001 Statut Membre Dernière intervention 30 juin 2009 9
7 janv. 2005 à 08:28
si le souci est même car dans les requéte de type :

where chemin='" & List2.List(j) & "' "

vb "pensera" que c'est la seconde cote

It@li@
0
cs_CanisLupus Messages postés 3757 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 13 mars 2006 21
7 janv. 2005 à 16:23
VB peut-être mais pas le moteur access car il remplace une double cote par une seule et ça le fait.

Mon exemple avec le doublage des cotes fonctionne très bien en DAO, pourquoi pas en ADO ?

cmd.CommandText = "select idproc from tableproc where chemin='" & replace(List2.List(j),"'","''") & "' "
Set rs3 = cmd.Execute

Par contre, s'il y a des guillemets, j'ai vérifié, pas de besoin de les remplacer ça passe tout seul.

Cordialement, CanisLupus
0
Rejoignez-nous