Besoin d'aide

Signaler
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
bonsoir à vous tous

je suis nouveau sur le forum et j ai vraiment besoin de votre aide .donc voila la situation j ai une table sql Application avec comme attribut le nom , description de l'appilcation et son statut . ce que je veux faire c'est d'inserer des enregistrement à partir d'un datagridview . j ai esseyer et sa marche sauf que sa me prend juste un seul enregistrement et je ne sais pas pk ? Merci pour votre aide d'avance

Ps : voila le code avec lequel j 'ai travaillé :

Dim nonqueryCommand As SqlCommand = cn.CreateCommand()
Try


nonqueryCommand.CommandText = " INSERT INTO Applications (nom_app, Description_de_application, statut_de_application) VALUES (@Col1, @Col2, @Col3 )"


nonqueryCommand.Parameters.Add("@Col1", SqlDbType.VarChar, 50)
nonqueryCommand.Parameters.Add("@Col2", SqlDbType.VarChar, 50)
nonqueryCommand.Parameters.Add("@Col3", SqlDbType.VarChar, 50)



nonqueryCommand.Prepare()


For Each row As DataGridViewRow In DataGridView1.Rows
If Not row.IsNewRow Then
nonqueryCommand.Parameters("@Col1").Value = row.Cells(0).Value.ToString
nonqueryCommand.Parameters("@Col2").Value = row.Cells(1).Value.ToString
nonqueryCommand.Parameters("@Col3").Value = row.Cells(2).Value.ToString

End If
Next

nonqueryCommand.ExecuteNonQuery()

Catch ex As SqlException

Console.WriteLine("Error: " & ex.ToString())
Finally
' Close Connection

5 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 et bienvenu

La prochaine fois, essaye de trouver un titre résumant ton problème afin que d'autres membres qui auraient le même genre de problème trouve ton message et la réponse associée.

Tu fais bien une boucle, mais tu fais l'insertion après cette boucle.
Il ne doit faire l'insertion que de la dernière donnée.
Déplace ton "Execute" à l'intérieur de la boucle.

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

Le savoir est la seule matière qui s'accroit quand on le partage (Socrate)
Grand merci sa marche à merveil ! sauf que quand j'enregistre une premiere c'est enregistré mais quand je met a nouveau des enregistrement un le msgbox qui sort mais sa enregistre pas
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Excuses mais je ne comprends rien de ce que tu dis.

Ça marche mais ça marche pas, lol.

"quand j'enregistre une premiere c'est enregistré"
une première ... ? une première fois ?

"quand je met a nouveau des enregistrement (virgule) un le msgbox qui sort mais sa enregistre pas"
"un le msgbox qui sort"
Veux-tu dire que tu as un message d'erreur ?
Si oui, penses-tu que le texte de ce message pourrais être un indice intéressant pour savoir d'où vient le problème ?

Si tu veux qu'on t'aide, il faut donner le maximum de renseignements ET tout de suite, sans qu'on te les demande. Dans 2 ou 3 jours, je ne regarderai plus ta question sur le forum ... Alors ne perds pas de temps + soit le plus précis possible.
désolé si j 'explike pas bien . le truc c que je rempli mon datagridview je click sur enregistré sa enregistre sur sql juska la no problemo! mais si apres j ai envie taper d'autre enregistrement sur le mm datagrid sa enristre pas .

encore une fois merci pour ton soutien
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
240
Bonjour,
Quand je lis des choses telle :
désolé si j 'explike pas bien

ma réaction est invariablement la même : on ne peut bien développer que ce que l'on conçois clairement. Et ce qui est conçu clairement s'exprime très naturellement également clairement. Toute carence, tant dans la conception, que dans l'expression, révèle en général un certain handicap peu conforme à l'esprit de développement.
Voilà !

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.