Mise à jour d'une BD à partir d'un DataGridView [Résolu]

cs_iceman64b 30 Messages postés mardi 28 février 2006Date d'inscription 5 mars 2013 Dernière intervention - 2 juil. 2010 à 19:43 - Dernière réponse : yohan49 382 Messages postés samedi 22 janvier 2005Date d'inscription 13 août 2011 Dernière intervention
- 9 juil. 2010 à 17:35
Bonjour,

Je suis à écrire une application en C#, dont une des fenêtres servira à mettre à jours 2 tables dans une BD MySQL. Dans la fenêtre, il y aura 2 Datagridview, chacun associé à un BindingSource (1 table).

Parlons d'un DataGridView (l'autre étant une copie du premier. Une fois le problème réglé pour un, l'autre, ça sera de la tarte!).

Mon problème est le suivant : J'arrive à faire afficher le contenu de la table. J'y arrive en utilisant un Dataset et un paramètre SQL que je passes lors de l'appel. Seulement voilà, je veux que l'utilisateur soit en mesure de faire des ajouts, modifications ou retrait d'enregistrement qu'il voit dans le DataGridView. Pour les modifs, ça va, j'appel la fonction Update et tout baigne (J'ai un bouton sauvegarde pour effectuer la sauvegarde des modifs ou autre opérations).

Si j'ajoutes une ligne dans le DataView, il me sort une erreur qui me dit que je dois utiliser un énoncé insert valide.

Les retraits fonctionnent (aller savoir pourquoi ...). Bref, il n'y a que l'ajout qui pose problème.

Pouvez-vous m'éclairer un peu ...

P.S. : j'utilises VS 2008 et un serveur MySQL
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
yohan49 382 Messages postés samedi 22 janvier 2005Date d'inscription 13 août 2011 Dernière intervention - 2 juil. 2010 à 21:45
3
Merci
salut quand tu ajout une ligne a une table le row ajoute doit avoir la meme stucture que la table

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                DataTable dt = dataGridView1.DataSource as DataTable;
                DataRow row = dt.NewRow();
                // modifi le row ici

                // puis ajout le raw a la table
                dt.Rows.Add(row);
            }
            catch (ConstraintException ex)
            {
                MessageBox.Show(ex.Message);
            }
            catch (InvalidConstraintException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

Merci yohan49 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 125 internautes ce mois-ci

Commenter la réponse de yohan49
baha112 2 Messages postés jeudi 13 avril 2006Date d'inscription 9 juillet 2010 Dernière intervention - 8 juil. 2010 à 18:35
0
Merci
Bonjour à tous ,
je ss une developpeur debutant en C#, et j'ai recontrer des problemes, et je vous remercie de m'aidée a trouver la solution:
dans ma fenêtre , j'au trois objets ( textbox , boutton et datagridview)
je sais pas comment paramêtrer mon datagridview , pour qu'il affiche l'excution d'une requête , cette dérnire à un condition de selection , elle n'affiche que les eregistrement que egale a la valeur saisi dans le textbox , je veux que le datagridview se rempli lorsque je saisi le cretère de filtre de la requête et je clique sur le boutton
Merci en avance
Commenter la réponse de baha112
yohan49 382 Messages postés samedi 22 janvier 2005Date d'inscription 13 août 2011 Dernière intervention - 8 juil. 2010 à 19:13
0
Merci
salut
comme ca :

(myDataGrid.DataSource as DataTable).DefaultView.RowFilter = "Name LIKE " + txtBox.text +"%";

"Name" est le nom de la colonne a filtrer

le "%" est un joker , ici en fin de requete , ca veut dire "Commence par "
Commenter la réponse de yohan49
baha112 2 Messages postés jeudi 13 avril 2006Date d'inscription 9 juillet 2010 Dernière intervention - 9 juil. 2010 à 16:26
0
Merci
Bonsoir yohan49,
tout d'abord , je vous remercie pour votre aide.
je vous informe que j'ai essaiyé le code que vous m'avez envoyé , mais a l'excution un message d'erreur s'affiche a la ligne de ce code "L'exception NullReferenceException n'a pas été gérée"
avez vous une idée pour résoudre ce problème?
Merci
Commenter la réponse de baha112
yohan49 382 Messages postés samedi 22 janvier 2005Date d'inscription 13 août 2011 Dernière intervention - 9 juil. 2010 à 17:35
0
Merci
faut verifier si Datasource de ta grille n'est pas null , que textbox n'est pas null ect
Commenter la réponse de yohan49

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.