Probléme d' insertion dans une base de données ADO

cs_hihello Messages postés 20 Date d'inscription samedi 7 mai 2005 Statut Membre Dernière intervention 25 août 2006 - 1 juin 2006 à 21:39
cs_liwei Messages postés 4 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 7 juin 2006 - 7 juin 2006 à 10:25
Public cn As ADODB.Connection
sql = "insert into table1 values ('hdfg','ada','AG-hh' ,'01/O1/2001' )"
cn.BeginTrans
cn.Execute (sql)
cn.CommitTrans
ca ne marche pas!!!! (le code est insérer dans un module)

6 réponses

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
1 juin 2006 à 23:27
Salut
Es-tu certains que tous tes champs (dans la définition de ta table dans la DB) soient de type Texte ?
Est-tu certains de n'avoir que 4 champs dans ta table (ou 5 si le 1er est AutoIncrémental) ?
Les champs sont bien dans cet ordre là ?
Je vois un format date ... Si le dernier est bien définit comme une date, il faut respecter la syntaxe SQL : Les dates s'encadrent non pas avec des ' mais des #
As-tu un méchant "On Error Resume Next" en tête de procédure ? Si oui, vire-le, il te dira où est problème.
Les valeurs que tu insères contiennent-elles des ' ? Dans ce cas il faut les doubler - Voir instruction Replace.
As-tu ... pu d'idées

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

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
0
cs_hihello Messages postés 20 Date d'inscription samedi 7 mai 2005 Statut Membre Dernière intervention 25 août 2006
2 juin 2006 à 01:15
Salut
Tu as raison: le premier champs est numéro auto et le dernier est une date; mais je ne sais pas cmt les insérer dans la req d'insertion??
0
billoute 50 Messages postés 76 Date d'inscription lundi 20 mars 2006 Statut Membre Dernière intervention 30 octobre 2007 2
2 juin 2006 à 08:30
Salut tu fait :
sql = "insert into table1 ( Champ2, Champ3, Champ4, Champdate) values ('hdfg','ada','AG-hh' ,#01/O1/2001# )"
avec à la place de Champ 2 le nom du champ
les noms de champ et les valeurs doivent être dans le même ordre
0
cs_liwei Messages postés 4 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 7 juin 2006
5 juin 2006 à 08:49
Bonjour tout le monde !!
Alors moi aussi j'ai un petit problème d'insertion dans ma table Access ... Voila mon code :
Private Sub cmd_ok_click()<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /?>

 

Dim ObjSet As ADODB.Recordset

Dim Num As String

Dim Nom As String

Dim Categorie As String

Dim Mode As String

Dim tva As String

 

Num = txt_ajoutmachine

Nom = txt_nommachine

Categorie = cbo_categ.Text

Mode = cbo_mode.Text

tva = cbo_tva.Text

 

Set ObjSet = New Recordset

 

ObjSet.Open "INSERT INTO machine (Num_Machine, Nom_Machine, Num_Categorie, Mode, TVA_Machine) VALUES ('" & Num & "'," & "'" & Nom & "'," & "'" & Categorie & "'," & "'" & Mode & "'," & "'" & tva & "');", connec, adOpenDynamic, adLockOptimistic

MsgBox "Enregistrement effectué avec succès !", vbInformation, "Enregistrement"

 

   

End Sub

VB me dit qu'il y a une erreur de syntaxe , mais je ne trouve pas quoi ...
Quelqu'un peut m'aider s'il vous plaît ???
Merci d'avance
0

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

Posez votre question
cs_hihello Messages postés 20 Date d'inscription samedi 7 mai 2005 Statut Membre Dernière intervention 25 août 2006
5 juin 2006 à 16:24
mais de quel type d'erreur; d'un premier vue votre requête sql contient un ; en fin mais je pense qu'il ne faut pas l'écrire, spécifie l'erreur d'abord
0
cs_liwei Messages postés 4 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 7 juin 2006
7 juin 2006 à 10:25
Merci hihello de ton intérêt
Mais à force de ténacité, je suis parvenue à résoudre mon problème !!!
A force de tout ces "'" et & "'" & var ... Il manquait un petit quelque chose !!!

En tout cas merci !
0
Rejoignez-nous