Problem dans "insert" au base de donner

Messages postés
2
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
3 mai 2009
-
Messages postés
2
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
3 mai 2009
-
Bonjour à tous je veux  faire une requêt de "insert" mais un mesage d'erreur s'affiche lors de l'execution :
(syntaxe incorrecte vers "," )  
Svp aide moi c'est urgent. 
voici le code:

Private
Sub btnValider_Click(
ByVal sender
As System.Object,
ByVal e
As System.EventArgs)
Handles btnValider.Click

Dim s
As
String =
"Data Source=.;Initial Catalog=Cr‚ditAgricole;Integrated Security=True"
Dim con
As
New SqlConnection(s)

Dim com
As SqlCommand
com =
New SqlCommand

Dim r, p
As
String
If
Me.chbMre.Checked =
True
Then
If
Me.rdR‚sident.Checked =
True
Then
r =
"M.R.E et r‚sident"
Else
r =
"M.R.E et non r‚sident"
End
If
Else
r =
""
End
If
If
Me.rdPhysique.Checked =
True
Then
p =
"Physique"
Else
p =
"Morale"
End
If
Try
com.CommandText =
"insert into Client values (" &
Me.txtCodeAgence.Text &
",'" &
Me.cmbQualit‚.Text &
"','" &
Me.txtNationnalit‚.Text &
"','" & r &
"','" &
Me.txtCat‚gR‚sidence.Text &
"','" &
Me.txtNom.Text &
"','" &
Me.txtPr‚nom.Text &
"'," &
Me.txtNChargeClient.Text &
",'" &
Me.txtDateOuverture.Text &
"'," &
Me.txtTelephone.Text &
",'" &
Me.txtEmail.Text &
"'," &
Me.txtFax.Text &
",'" &
Me.txtCSP.Text &
"','" &
Me.txtAP.Text &
"','" &
Me.txtAA.Text &
"','" &
Me.txtAE.Text &
"','" & p &
"','" &
Me.txtAdresse1.Text &
"','" &
Me.txtPays.Text &
"','" &
Me.txtVille.Text &
"'," &
Me.txtCodePostal.Text &
")"
com.Connection = con
con.Open()
com.ExecuteNonQuery()
con.Close()

Catch ex
As Exception
MsgBox(ex.Message)

End
Try
End
Sub

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Il manque les _ en fin de ligne, surement dû à un problème de copier/coller.
Prends l'habiture de bien indenter ton code et d'abuser des coupures avec le _
Cela donne de la clarté et cela permet de rechercher beaucoup plus facilement les erreurs.

Voilà ton code remis en forme :
"insert into Client values (" & _
                 Me.txtCodeAgence.Text & "," & _
           "'" & Me.cmbQualit,.Text & "'," & _
           "'" & Me.txtNationnalit,.Text & "'," & _
           "'" & r & "'," & _
           "'" & Me.txtCat,gR,sidence.Text & "'," & _
           "'" & Me.txtNom.Text & "'," & _
           "'" & Me.txtPr,nom.Text & "'," & _
                 Me.txtNChargeClient.Text & "," & _
           "'" & Me.txtDateOuverture.Text & "'," & _
                 Me.txtTelephone.Text & "," & _
           "'" & Me.txtEmail.Text & "'," & _
                 Me.txtFax.Text & "," & _
           "'" & Me.txtCSP.Text & "'," & _
           "'" & Me.txtAP.Text & "'," & _
           "'" & Me.txtAA.Text & "'," & _
           "'" & Me.txtAE.Text & "'," & _
           "'" & p & "'," & _
           "'" & Me.txtAdresse1.Text & "'," & _
           "'" & Me.txtPays.Text & "'," & _
           "'" & Me.txtVille.Text & "'," & _
                 Me.txtCodePostal.Text & ")"
Je n'y vois pas d'anomalie.
Assure toi que les champs suivants (dans la DB) sont bien définis comme des chiffres (les autres devant être des texte) :
   CodeAgence, NChargeClient, Telephone, Fax

Il est impératif que cette liste de TextBox correspondent à la liste des champs de ta DB (même ordre et quantité)
La syntaxe officielle est 
   Insert Into maTable
          (monChamp1, monChamp2 [, monChamp3])
   Values (maValeur1, maValeur2 [, maValeur3])
mais on peut se passer de la liste des noms des champs si on doit utiliser tous les champs et dans le bon ordre.

Bien sûr, il est aussi impératif que le contenu de tes TextBox ne comportent pas de ' qui pourrait déséquilibrer les ouvertures/fermetures de zone texte; la solution étant de doubler ces ' situés à l'intérieur des chaines à insérer, c'est la raison pour laquelle on n'utilise pratiquement jamais les TextBox directement.

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

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
CodePostal aussi doit être défini comme chiffre dans la DB
Messages postés
2
Date d'inscription
dimanche 3 mai 2009
Statut
Membre
Dernière intervention
3 mai 2009

merci bcp pour votre conseils