Besoin d'aide pour une requete dans acces

Résolu
petiflamand Messages postés 675 Date d'inscription samedi 31 mai 2003 Statut Membre Dernière intervention 26 mai 2013 - 16 nov. 2007 à 06:59
fred0381 Messages postés 26 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 11 mars 2009 - 19 nov. 2007 à 22:01
Bonjour j'ai un petit soucis c'est a dire avec ma requete si dessous
j'efface des données dans ma table qui sont Monétaire, il n'y a pas de probleme
quand le prix est du genre 100,00 ou 1,00 ou 147,00 mais si apres la virgule c'est autre chose que 00 j'ai une erreur.Donc je suis sur que c'est a cause du Prix = " & c & " Mais pourquoi je ne sait pas
Merci d'avance

voici ma requete

db.Execute "DELETE FROM a_facturer WHERE num_client=" & a & " And date = '" & d & "' AND heure = CDate('" & e & "') and marchandise = '" & b & "' AND prix = " & c & ""

3 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 nov. 2007 à 07:22
une histoire de séparateurs décimal....(parametres regionnaux)

ton code génère :

"...AND prix = 100,47"

là où on attend

"...AND prix = 100.47"

utilises Str$ :


db.Execute "DELETE FROM a_facturer WHERE num_client=" & a & " And date = '" & d & "' AND heure = CDate('" & e & "') and marchandise = '" & b & "' AND prix = " & Str$(c)

de même, tes dates ne sont pas bien formattées, on attend #MM/DD/YYYY#
(le séparateur n'est pas la simple quote ' mais bien un dièse #)
3
petiflamand Messages postés 675 Date d'inscription samedi 31 mai 2003 Statut Membre Dernière intervention 26 mai 2013 1
16 nov. 2007 à 07:27
Merci beaucoup
0
fred0381 Messages postés 26 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 11 mars 2009
19 nov. 2007 à 22:01
je pense que ca peut marcher aussi avec la fonction format :
db.Execute "DELETE FROM a_facturer WHERE num_client=" & a & " And date = '" & d & "'  AND heure = CDate('" & e & "') and marchandise = '" & b & "'  AND prix = " & format(c,"standard") & ""
0
Rejoignez-nous