Besoin d'aide pour une requete dans acces [Résolu]

Signaler
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
-
Messages postés
26
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
11 mars 2009
-
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

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
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 #)
Messages postés
675
Date d'inscription
samedi 31 mai 2003
Statut
Membre
Dernière intervention
26 mai 2013
1
Merci beaucoup
Messages postés
26
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
11 mars 2009

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") & ""