Problème de syntaxe sur UPDATE (err 3144)

Signaler
Messages postés
18
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
24 septembre 2002
-
Messages postés
100
Date d'inscription
mercredi 29 mai 2002
Statut
Membre
Dernière intervention
27 juillet 2004
-
Bonjour!
Voilà j'ai un gros problème sur lequel je coince: j'ai sans arret une erreur de syntaxe pour l'instruction suivante:
maBase.Execute "UPDATE RepRess  " _
       & "SET RepartiMoy=" & RepartiSem


RepartiMoy est déclaré en single dans ma table et repartiSem est aussi de type single.

peut être y'at-il des caractères à ajouter pour faire passer une variable de ce type (tout comme on ajoute des ' ' pour passer des chaines)

Si qqn a déjà rencontré ce pb -et l'a résolu- ça m'interresse.
Merci d'avance à ceux qui me répondront
DG %-6

7 réponses

Messages postés
360
Date d'inscription
vendredi 24 août 2001
Statut
Membre
Dernière intervention
9 juillet 2008
3
Tiens, t'a pas une clause where ? T'update toute la table?
Sinon, c koi le message exacte, c vb qui "coince" ou Access ?

==============
Site Web de JDPROG
Présentation de MP3 Index
Logiciel d'indexation de fichier MP3

http://jdprog.fr.st
0
Messages postés
18
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
24 septembre 2002

Bien vu pour la clause Where. Merci bcp
Sinon le mesage que je reçois c'est:
"Syntax error in UPDATE statment"Miantenant que j'ai ajouté la clause where ca donne:

maBase.Execute "UPDATE RepRess " _
            & "SET RepartiDeb = " & RepartiSem  _
            & " WHERE NumTache=" & ListItem + 1 _
            & " AND NumRess=" & numRess

et ça beug toujours autant. a mon avis le pb doit se trouver dans le SET mais je vois pas pourquoi

DG
0
Messages postés
18
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
24 septembre 2002

Au fait: j'utilise pas access pour créer mes bases de données, je fais tout dans vb.
je crée un fichier ".mdb" dans lequel je mets ma base de données.
DG
:)
0
Messages postés
100
Date d'inscription
mercredi 29 mai 2002
Statut
Membre
Dernière intervention
27 juillet 2004

essaye ça

dim i
i = ListItem + 1
mabase.Execute "UPDATE RepRess " _
& "SET RepartyiDeb = " & RepartiSem _
& " WHERE NumTache = " & i _
& " AND NumRess = " & numress

sinon au lieu de mettre mabase.Execute "UPDATE...", déclare une variable String...

Dim strSql as String
dim i
i = ListItem + 1

strSql = "UPDATE..."
debug.print strSql 'te permettra de trouver l'erreur de syntaxe, s'il s'agit de ça

mabase.Execute

(c'est quoi les ...) ?

~~~ NuNu ~~~
0
Messages postés
18
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
24 septembre 2002

J'ai essayé avec le Debug
Dans la fenetre d'execution j'ai:

UPDATE RepRess SET RepartiDeb = 174,1935 WHERE NumTache=1 AND NumRess=2

Ce qui ne me semble pas particulièrement mauvais.
Et au moment de faire maBase.Execute j'ai à nouveau le message
Syntax error in UPDATE statement
je comprend rien je désespère
:sad) %-6

DG
0
Messages postés
18
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
24 septembre 2002

J'ai constaté que la commande UPDATE fonctionne si j'utilise des variables de type INTEGER dans la table et dans les calculs.
C'est pire que ce que je croyais:C'est pas logique du tout!!!
Merci à tous ceux qui essayent de m'aider
:big)
DG
0
Messages postés
100
Date d'inscription
mercredi 29 mai 2002
Statut
Membre
Dernière intervention
27 juillet 2004

ça y est, la réponse tu l'as presque...le problème c'est la virgule !

....RepartiDeb = 174,1935 ....

SQL ne veut ni la virgule, ni l'apostrophe et autres

Pour que ça marche, change la virgule en point avant de sauvegarder ds la base.

~~~ NuNu ~~~
0