Trouble INSERT -- La table n'existe pas [Résolu]

Messages postés
23
Date d'inscription
vendredi 1 janvier 2016
Statut
Membre
Dernière intervention
9 mai 2016
- - Dernière réponse : Damboushow
Messages postés
23
Date d'inscription
vendredi 1 janvier 2016
Statut
Membre
Dernière intervention
9 mai 2016
- 3 janv. 2016 à 18:24
Bonjour, j'ai encore une petite difficulté à discuter avec ma BD, cette fois avec une commande insert. Le trouble se passe au niveau de la requète SQL, Il me dit que la table n'existe pas alors qu'elle existe et est bien orthographié et oui, j'utilise bien la bonne BD.

Avez vous une piste de solution pour m'aider dans mes recherches, ou est-ce une erreur de syntaxe de code qui pourrait causer ça?

Private Sub Enregistrer_Click()
Dim cat As Integer
cat = CInt(Me.categorie.Value)
Dim nom As String
nom = Me.nomItem.Value
Dim ref As String
ref = Me.refItem.Value
Dim qte As Integer
qte = CInt(Me.quantite.Value)
Dim mini As Integer
mini = Me.mininmum.Value
Dim fab As Integer
fab = Me.fabricant.Value
Dim strReq As String
srtReq = "INSERT INTO Inventaire([nomItem],[refItem],[categorie],[quantite],[mininmum],[fabricant]) VALUES (" & nom & "," & ref & "," & cat & "," & qte & "," & mini & "," & fab & ")"
Dim db As DAO.Database
'Dim rs As DAO.Recordset
Dim strChemin As String
strChemin = "c:\Users\Dambou\Komet\MagasinGuiro2016.accdb"
Set db = Application.DBEngine.OpenDatabase(strChemin, False, False)
db.Execute (strReq)
db.Close
Me.nomItem.Value = ""
Me.refItem.Value = ""
Me.quantite.Value = ""
Me.mininmum.Value = ""

End Sub

Merci pour votre aide.
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
23
Date d'inscription
vendredi 1 janvier 2016
Statut
Membre
Dernière intervention
9 mai 2016
2
2
Merci
Merci pour ton aide, j'ai pris la décision il y à quelques minutes d'abandonner mon projet actuel et le reprendre de 0, il doit y avoir une erreur système dans mon projet access car j'ai maintenant le même message avec tous mes tables.

J'ai vérifié pour les caractères invisible et ce n'est pas le cas, merci pour la piste de solution.

Le point positif c'est que les connaissances acquises demeures :) et que mon code sera meilleur.

Dire « Merci » 2

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 189 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Damboushow
Messages postés
13849
Date d'inscription
mardi 11 mars 2003
Statut
Non membre
Dernière intervention
22 octobre 2019
312
1
Merci
Bonjour, ici http://codes-sources.commentcamarche.net/forum/affich-10058557-erreur-syntaxe-vba-sur-code-sql
Nhenry a eu l'obligeance de rendre ton message lisible, tout en te le signalant et en mettant un lien vers la procédure.

A aucun moment dans la suite de la discussion tu n'en as tenu compte.

Sache que nous sommes nombreux à ne pas vouloir se tuer les yeux et donc tu perds des réponses potentielles....
Damboushow
Messages postés
23
Date d'inscription
vendredi 1 janvier 2016
Statut
Membre
Dernière intervention
9 mai 2016
2 -
Merci, je n'avais pas pigé ce bout, j'avais regardé vite l'encadré et pris pour une pub. je vais évidement suivre ces recommandations. Merci de me l'avoir souligné.
Commenter la réponse de Whismeril
Messages postés
23
Date d'inscription
vendredi 1 janvier 2016
Statut
Membre
Dernière intervention
9 mai 2016
2
0
Merci
Bonjour, Voici le code avec les balises de ma question.

Private Sub Enregistrer_Click() 
'ICI il y a les variables enlevé pour alléger
srtReq = "INSERT INTO Inventaire([nomItem],[refItem],[categorie],[quantite],[mininmum],[fabricant]) VALUES (" & nom & "," & ref & "," & cat & "," & qte & "," & mini & "," & fab & ")" 
Dim db As DAO.Database  
Dim strChemin As String 
strChemin = "c:\Users\Dambou\Komet\MagasinGuiro2016.accdb" 
Set db = Application.DBEngine.OpenDatabase(strChemin, False, False) 
db.Execute (strReq) 
db.Close 
Me.nomItem.Value = "" 
Me.refItem.Value = "" 
Me.quantite.Value = "" 
Me.mininmum.Value = "" 

End Sub 
Commenter la réponse de Damboushow
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
212
0
Merci
Bonjour,
Je ne vois personnellement aucune erreur dans la construction de la chaîne de caractères de ta requête d'insertion, en admettant que la table Inventaire existe bien sous ce nom très exact (méfie-toi des caractères invisibles éventuels).
Je ne comprends par ailleurs (mais rien à voir avec ton message d'erreur) pas la nécessité de mettre entre crochets tes noms de champs. Ce n'est à ma connaissance nécessaire que si ces noms sont par ailleurs des mots clés de Access.
Commenter la réponse de ucfoutu