cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005
-
7 juil. 2004 à 09:30
cs_silv
Messages postés7Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention27 juillet 2004
-
22 juil. 2004 à 12:03
Bonjour,
j'ai un problème avec une requête de suppression en SQL dont voici le code:
sqldel1$ = "DELETE FROM TBL_ActivNep WHERE Mois=" & Mois_var
sqldel2$ = " AND Année=" & Année_var
sqldel3$ = " AND CIP=" & CIP_Label
sqldel4$ = " AND Paramètres=" & Param_box
sqldel$ = sqldel1 + sqldel2 + sqldel3 + sqldel4
db.Execute sqldel
C'est la partie en gras que n'apprécie pas le programme.
Pour info, la variable Param_box est définies comme String et contient des mots tels que "Centrale d'achat" ou "MDD".
Selon si le mot est en plusieurs ou seul l'erreur n'est pas la même.
Erreur lorsque qu'un mot est du type "Centrale d'achat":
Erreur d'exécution' 3075'
Erreur de syntaxe (opérateur absent)
Erreur lorsqu'un mot est du type "MDD":
Erreur d'exécution '3061'
Trop peu de paramètres. 1 attendu.
Voilà si quelqu'un peu résoudre mon problème avec cette requête ça serait sympa.
cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005 7 juil. 2004 à 13:33
Alors
Mois : Entier
Année : Entier
CIP : Entier long
Paramètres: Texte
Ces champs ne peuvent pas être null , j'ai posé un protection si c'est le cas.
J'ai déjà lancé ma requête sans Paramètres et ça fonctionne et en fait ça merde qu'avec Paramètres. Et j'en ai besoin sinon l'effacement ne sera pas bon.
Vous n’avez pas trouvé la réponse que vous recherchez ?
cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005 7 juil. 2004 à 13:47
Merci
Oki ça marche nickel maintenant je vais chercher comment faire pour pas que ça plante à cause de la chaîne
" Centrale d'achat" car l'apostrophe fait merder
Je pense qu'il y a un moyen de le coder ou de faire autrement
cs_silv
Messages postés7Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention27 juillet 2004 21 juil. 2004 à 13:50
Salut ;
voila j'ai a peu pres le meme problème que cuber (erreur 3075), sauf que pour moi, il s'agit d'un insert et dans ce cas, est ce que tu peux utiliser escape? pour pouvoir utiliser le caractère '
cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005 21 juil. 2004 à 15:38
Peux-tu me rappeler ton erreur car je sais pas pourquoi mais chez moi il n'y a que ton message d'affiché et les autres sont vides?
Comme ça je verais si je peux t'aider
cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005 21 juil. 2004 à 15:38
Peux-tu me rappeler ton erreur car je sais pas pourquoi mais chez moi il n'y a que ton message d'affiché et les autres sont vides?
Comme ça je verais si je peux t'aider
et y me sort une erreur 3075.
j'ai vu dans ton message que ca venait certainement du quote ou du doublequote de fin de variable qu'il doit interpreté comme la fin de commande sql, mais je ne sais pas comment faire : peut etre en utilisant la commande escape mais je n'arrive pas a l'integrer dans le insert
cuber
Messages postés20Date d'inscriptionlundi 5 juillet 2004StatutMembreDernière intervention20 janvier 2005 22 juil. 2004 à 10:05
oki je vois ton erreur en fait cela vient de ta variable si elle contient un apostrophe, il faut que tu fasses une fonction qui lise ta variable et qui remplace ton apostrophe par un double quote ou par \' (mais chez moi cette 2ème sol ne marche pas).
Je crois que cette fonction est seur le forum je vais chercher et si je la trouve je te mets le lien après.