Erreur de syntaxe opérateur manquant

levasseur62 Messages postés 4 Date d'inscription mardi 16 novembre 2010 Statut Membre Dernière intervention 26 avril 2011 - 24 avril 2011 à 16:15
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 - 26 avril 2011 à 17:40
Bonjour,

j'ai mon code si dessus et j'ai comme message erreu de syntaxe opérateur manquant dans l'expression '[NUMRES] = ' , je n'arrive pas à trouver l'erreur :/

Dim db As DAO.Database
Set db = OpenDatabase("", dbDriverComplete, False, "ODBC;DSN=MYSQL;UID=root;PWD=;Database=campingabl")
Dim sql1, sql2 As String
Dim rs1, rs2 As DAO.Recordset

              datereser = Text4(2) & "/" & Text3(2) & "/" & Text2(2)
              
            sql1 "UPDATE location SET DATEARRIVEE '" & datereser & "' WHERE [NUMRES] = " & x & " "
           
           db.Execute (sql1) 
[code=vb]
/code

6 réponses

levasseur62 Messages postés 4 Date d'inscription mardi 16 novembre 2010 Statut Membre Dernière intervention 26 avril 2011
24 avril 2011 à 16:16
Dim db As DAO.Database
Set db = OpenDatabase("", dbDriverComplete, False, "ODBC;DSN=MYSQL;UID=root;PWD=;Database=campingabl")
Dim sql1, sql2 As String
Dim rs1, rs2 As DAO.Recordset

              datereser = Text4(2) & "/" & Text3(2) & "/" & Text2(2)
              
            sql1 "UPDATE location SET DATEARRIVEE '" & datereser & "' WHERE [NUMRES] = " & x & " "
           
           db.Execute (sql1)


Merci
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
24 avril 2011 à 19:42
Salut

Qu'y a t-il dans ta variable X ?
NUMRES est un champ de quel type (texte, numérique ?)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
levasseur62 Messages postés 4 Date d'inscription mardi 16 novembre 2010 Statut Membre Dernière intervention 26 avril 2011
25 avril 2011 à 08:01
c'est bon jack :) j'ai trouvé réussis à contourner l'erreur,NUMRES étant une textbox contenant un chiffre,j'ai

placé ce chiffre dans x (NUMRES = x ) et sa à marché, cependant j'ai un autre message qui s'affiche

" operation must use an updateable query " et je sais pas trop quoi faire :/
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
25 avril 2011 à 14:33
NUMRES étant une textbox
Non, NUMRES est un champ de ta table
S'il est de type texte, il faut ajouter des ' pour encadrer la valeur.

Je ne connais pas cette erreur --> Voir dans l'aide ou dans les doc

NB 1 :
En VB6, cette syntaxe ne veut pas dire que chaque objet sera du type DAO.Recordset
Dim rs1, rs2 As DAO.Recordset
"rs1" sera du type Variant.
Ça fonctionnera surement, mais après un point derrière rs1, tu ne dois pas obtenir la liste des propriétés.

Idem pour
Dim sql1, sql2 As String

NB 2 :
DAO est obsolète et certaines fonctions (de recherche par exemple), ne fonctionnent pas.
Utiliser ADO (ADODB)
0

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

Posez votre question
levasseur62 Messages postés 4 Date d'inscription mardi 16 novembre 2010 Statut Membre Dernière intervention 26 avril 2011
26 avril 2011 à 14:16
- NUMRES est un champ et numres est ma textbox , ya eu confusion ^^

- sinon l'erreur dois être un problème de droit d'accés lecture ou écriture un truc du genre.

- j'ai pas tout saisie, rs1 et rs2 sont de type variant lorsque je les déclare comme ceci Dim rs1, rs2 As DAO.Recordset ?

- donc si je veux y remédier je dois faire Dim rs1. , rs2. As DAO.Recordset DAO pour rs1 et le . pour Recordest ?

- je pense pas que DAO soit obsolète car j'y arrive sur un autre programme .
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
26 avril 2011 à 17:40
Pas d'idée sur ton erreur DAO.

Il faut répéter le type pour chaque variable :
Dim rs1 As DAO.Recordset, rs2 As DAO.Recordset

DAO est obsolète, je te le confirme.
Il fonctionne encore, certes, mais les fonctions de Filtrage ou de Search ne marche pas (ou pas à coup sûr)
0
Rejoignez-nous