Erreur de Syntax

crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004 - 1 mars 2004 à 10:44
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004 - 1 mars 2004 à 15:26
Salut, il me dit qu'il y a une erreur de synthaxe au niveau du Insert into

Dim var As String
Dim sql As String
Dim cnx As New ADODB.Connection

Open "c:\test3.txt " For Input As #1

cnx.Mode = 3 'pour pouvoir inserer des données
cnx.Provider = "Microsoft.Jet.Oledb.3.51"
'Définition de la chaîne de connexion
cnx.ConnectionString = "C:\bd.mdb"
'Ouverture de la base de données
cnx.Open
Do While Not (EOF(1) = True)
            
    Line Input #1, var
    strTab = Split(var, ",") 'Attention! Ceci écrase le contenu de strTab
    sql = "INSERT INTO Table(DATE,HEURE,POSTE,NUMCOMPO,annu,DUREE,DUREECOM) values ('strtab')"
    cnx.Execute (sql)
Loop
cnx.Close
Set cnx = Nothing


PS: c'est pour inserer un fichier texte dans une base de donnée.

Merci

11 réponses

BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
1 mars 2004 à 10:57
values (' & strtab(0) & "','" & strtab(1) & "','" .....

@++

:clown) BasicInstinct :clown)
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 11:14
Merci mais toujours pas, il me souligne en jaune
cnx.Execute (sql)


et me dit toujours qu il y a une erreur de synthaxe.

Merci d'avance
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
1 mars 2004 à 12:00
certainement parceque si t'as une dae, il faut l'encadrer par des # a la place de '

et si c'est un nombre, pas de ' du tout.

Ca depends du type des champs...

@++

:clown) BasicInstinct :clown)
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 13:05
Mon fichier texte:

" DATE ","HEURE"," POSTE","NU.COMPOSE","DUREE DE C"
"04/05/02","13:01 ","201 ","260 "," 0:00:11"

Comment je doit faire avec Insert Into?

Je sais je suis nul, j'ai commandé un livre mais il n'arrive que jeudi, et bon, je ne peux me tourner les pouces, merci de m'aider

sql = "INSERT INTO table (DATUM, HEURE , POSTE, NUMCOMPO, annu, DUREE, DUREECOM) values ( " & strtab & " )"
0

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

Posez votre question
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
1 mars 2004 à 13:55
deja il te faut autant de champs que de valeurs a inserer :

"04/05/02","13:01 ","201 ","260 "," 0:00:11" = 5 champs

DATUM, HEURE , POSTE, NUMCOMPO, annu, DUREE, DUREECOM = 7 champs

il manque 2 champs d'un coté ou il y en a 2 de trop dans l'autre

sql = "INSERT INTO table (DATUM, HEURE , POSTE, NUMCOMPO, annu, DUREE, DUREECOM) values (#" & strtab(0) & "#,#" & strtab(1) & #," & strtab(2) & ",'" & strtab(3) & "'",....

:clown) BasicInstinct :clown)
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 14:19
Merci Basic Instinct, mais normalement dans ma Base de données, je peux definir tous mes champs en text, ainsi il reconnait aussi bien les dates que les heures ou bien les nombres, non
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 14:21
Merci Basic Instinct, mais normalement dans ma Base de données, je peux definir tous mes champs en text, ainsi il reconnait aussi bien les dates que les heures ou bien les nombres, non
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
1 mars 2004 à 14:25
si tous tes chamsp sont de type texte dans ta base, il faut que tu encadres des valeurs par des '

mais tu dois qd meme avoir autant de champs du coté du insert into que du coté Values. Et dans le meme ordre evidement.

:clown) BasicInstinct :clown)
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 14:34
Thank you very much Basic Instinct, mais now, :blush) , il m'affiche une erreur sur la ligne

cnx.Execute (sql)

Il me dit erreur de synthaxe dans l'instruction Insert INTO,

C'est soit un probleme de connexion avec ma base de données, ce qui m'etonne qd meme car sinon il me dirait, enfin je crois, soit un proleme de synthaxe au point de vue de cette ligne là.

Merci encor pr tt
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
1 mars 2004 à 14:58
ta syntaxe doit etre du type:

"insert into Table (Champs1, Champ2, Champ3) values ('" & Valeur1 & "','" & Valeur2 & "','" & valeur3 & "')"

si tu y arrives pas, envoie moi la structure de ta table ainsi qu'1 bout de ton fichier txt

villissina@wanadoo.fr

@++

:clown) BasicInstinct :clown)
0
crocmorts Messages postés 49 Date d'inscription mardi 17 février 2004 Statut Membre Dernière intervention 6 avril 2004
1 mars 2004 à 15:26
Je t'ai envoyé un mail, encore merci
0
Rejoignez-nous