Probleme avec Insert Into

Résolu
Signaler
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
-
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
-
Bonjour
j'ai un petit soucis avec "insert Into",voila le code
requete = "INSERT INTO centre_aéré (Num_ctr,nomenfant_ctr,prenomenfant_ctr,pere_ctr,mere_ctr, " _
        & "emploi_ctr,adresse_ctr,commune_ctr,telfixe_ctr,telport_ctr,caf_ctr,sexe_ctr,datenaiss_ctr,age_ctr) VALUES " _
        & "(" & MaX & ",""" & Text_nomenf & """,""" & Text2 & """," _
        & """" & Text3 & """,""" & Text4 & """,""" & Text8 & """," _
        & """" & Text5 & """,""" & Text7 & """,""" & txt_telfixe & """," _
        & """" & txt_telport & """,""" & Txt_caf & """,""" & comb_sexe & """," _
        & """" & datenais & """,""" & Text1 & """,""" & """ )"
      
  
   Db.Execute requete
  
    requete = ""
et l'erreur c'est :
"le nombre de valeurs de la requete doit coincider avec le nombre de champs de destination"
et il me surligne :
Db.Execute requete
je ne vois pas de ou ça peut venir.
  merci 
petchy 

6 réponses

Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
Bonsoir,



l' erreur du début  venait du fait que le nombre de champs
énumérés dans la première INSERT n' est pas équivalent au nombre
d' expressions dans la partie Values.



Pour l' erreur de synthaxe, il faut avoir un espace après la virgule
genre : (Num_ctr, nomenfant_ ctr, prenomenfant_ctr, pere_ctr, mere_ctr,





 
Messages postés
178
Date d'inscription
vendredi 9 février 2007
Statut
Membre
Dernière intervention
8 juin 2007

Apparement tu essaies d'écrire quelque part où il n'y a plus de place
Messages postés
268
Date d'inscription
lundi 9 janvier 2006
Statut
Membre
Dernière intervention
19 janvier 2017
2
Essaye donc de remplacer tes doubles cotes par des simples cotes pour délimiter des valeurs de chaînes à l'intérieur de ta chaîne SQL. Celà fonctionnera surement nettement mieux.
requete = "INSERT INTO centre_aéré (Num_ctr,nomenfant_ctr,prenomenfant_ctr,pere_ctr,mere_ctr, " _
        & "emploi_ctr,adresse_ctr,commune_ctr,telfixe_ctr,telport_ctr,caf_ctr,sexe_ctr,datenaiss_ctr,age_ctr) VALUES " _
        & "(" & MaX & ",'" & Text_nomenf & "','" & Text2 & "','" & Text3 & "','" & Text4 & "','" & Text8 & "','" & Text5 & "','" & Text7 & "','" & txt_telfixe & "','" & txt_telport & "','" & Txt_caf & "','" & comb_sexe & "','" & datenais & "','" & Text1 & "' );"

D'autre part, il y a un signe de concaténation en trop en fin de chaîne : & """" & datenais & """,""" & Text1 & """,""" & """ )"
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
3
Re
merci à vous de m'aider,mais ça ne fonctionne toujours pas
il me dit :
"erreur de syntaxe dans Insert Into"
petchy
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
3
j'ai rempli les tous les champs dans ma table,et quand j'ai lancé mon prog
tous les colonnes de ma listview ne sont pas remplis il n'y en à 5 sur 11 qui sont remplis ?
Sub Rafresh(requete As String)


'-- Requete Sql
Set Rs = New ADODB.Recordset
Rs.Open requete, Db


'-- Nettoie la liste
Frm_Accueil.List.ListItems.Clear


'-- Remplissage de la liste
If Rs.EOF Then
    Frm_Accueil.List.ListItems.Add , , "Aucun Article dans la base de donnée"
    Exit Sub
Else
    Do Until Rs.EOF
       
        Frm_Accueil.List.ListItems.Add , , Rs!nomenfant_ctr, , "po"
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!prenomenfant_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!pere_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!mere_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!caf_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!emploi_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!telfixe_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!telport_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!sexe_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!datenaiss_ctr
        Frm_Accueil.List.ListItems(Frm_Accueil.List.ListItems.Count).ListSubItems.Add , , Rs!age_ctr
        Rs.MoveNext
    Loop
End If
Rs.Close
End Sub

petchy
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
3
Re
merci,sa fonctionne
petchy