Probleme avec l'instruction update

bricko59 Messages postés 7 Date d'inscription mercredi 4 juillet 2012 Statut Membre Dernière intervention 10 août 2012 - 24 juil. 2012 à 10:41
dpeali Messages postés 67 Date d'inscription vendredi 10 août 2012 Statut Membre Dernière intervention 12 avril 2013 - 24 juil. 2012 à 12:52
Bonjour,
actuellement je suis entrain de faire un stage et mon sujet c'est développer une application de gestion de stock sur Access. Ça fait un moment que je bloque sur une instruction update. C'est surement une erreur de syntaxe mais j'ai beau me casser les meninges je ne vois pas l'erreur. L'instruction est la suivante,

chsql = "update Inventaire set Référence= "&Ref&",Désignation="&Dés&",DatedeSortie='"&stdate&"'"

J'ai envie de mettre a jour une table Inventaire dont les champs sont
référence, désignation, et DatedeSortie.
Merci d'avance pour votre aide

4 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
24 juil. 2012 à 11:00
Bonjour,
Ce n'est pas là une question VB6, mais une question de formulation d'une requête !
Oublie VB6. Va directement dans ta base Access et édite ta requête à la main. Elle ne marchera pas ? C'est sûr ! Les critères de champs de type string devraient être encadrés de guillemets, par exemple ! Les critères de champs de type date, être entourés de #.
C'est donc plutôt la syntaxe des requêtes Access, qu'il te faut apprendre avant tout.
Une fois cela appris, il te suffira de reconstituer très exactement cette chaîne de requête de^puis VB6. Une simple msgbox de ta requête te montrera si elle est bien écrite (comme celle qui fonctionne en manuel).
Bonne étude.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
bricko59 Messages postés 7 Date d'inscription mercredi 4 juillet 2012 Statut Membre Dernière intervention 10 août 2012
24 juil. 2012 à 11:31
je suis débutant sur le site et je n'ai pas trouvé mieux de poser cette question dans la rubrique VB6. j'ai corrigé la faute et maintenant l'erreur est
Erreur d’exécution 3075
Erreur de syntaxe (Opérateur absent) dans l'expression "Papier Duplicateur A4"
chsql = "update Inventaire set Référence= " & Ref & ",Désignation= " & Des & ",DatedeSortie='" & StDate & "'"
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
24 juil. 2012 à 12:40
Tu as cette erreur si, par exemple, un caractère ' se trouve inclus dans le critère retenu. Si tel est le cas, il te faut doubler ce caractère.
Je vois qu'en dépit de ce que je t'ai dit plus haut, tu continues à te jeter contre le grillage pour avoir un grain de blé.
Est-il si dur de penser simplement :
- à faire un msgbox chsql (pour voir ce que contient la chaîne de requête) ?
- à (si cohérente à l'affichage) l'appliquer directement (manuellement, don) depuis access ?
Je vois également que tu n'a tenu (mais ce sera une autre erreur encore) aucun compte de ce que je t'ai dit plus haut à propos des critères de date !
Veux-tu bien, s'il te plait, commencer à t'efforcer de regarder de plus près ce que tu fais (une msgbox t'y aidera) ? C'est cela, le développement bien compris.

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
0
dpeali Messages postés 67 Date d'inscription vendredi 10 août 2012 Statut Membre Dernière intervention 12 avril 2013 2
24 juil. 2012 à 12:52
essayer avec la methode ado:
si vous ne savez pas ecrivez- moi
cn.Execute ("update Inventaire set Référence='" + ref.text + "',Désignation=" + des.text + ",DatedeSortie=" + stdate.text + "'")
NB: .text si c'est une zone texte
0
Rejoignez-nous