Enregistrement des données d'un datagrid

Résolu
cs_kme Messages postés 14 Date d'inscription jeudi 3 juillet 2003 Statut Membre Dernière intervention 14 juin 2007 - 8 mars 2007 à 10:18
cs_Kassidy Messages postés 97 Date d'inscription lundi 2 mai 2005 Statut Membre Dernière intervention 21 mars 2008 - 8 mars 2007 à 11:28
Bonjour, 

j'ai crée un datagrid  :

//Connection à la baseconnection.ConnectionString =

@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +
PageAccueil.chaine;

//Ouverture de la baseconnection.Open();

adapter =

new
OleDbDataAdapter(
"SELECT operation.libelle_operation, IIf([rec_dep_operation]='Dépense',[montant_operation],'') AS Dépense, IIf([rec_dep_operation]='Recette',[montant_operation],'') AS Recette, operation.pointage_banque_operation, libelle_rubrique, datecreation_operation, libelle_modepaiement FROM mode_paiement, operation, rubrique WHERE mode_paiement.num_modepaiement = operation.num_modepaiement AND rubrique.num_rubrique=operation.num_rubrique AND rubrique.datecloture_rubrique Is Null AND pointage_banque_operation = false ORDER BY libelle_operation ", connection);adapter.Fill(table);

_dataGrid.DataSource = table;

Jusque là, tout va bien.
Mais je voudrai que l'utilisateur puisse modifier des données dans le datagrid.

Comment faire pour faire l'opération inverse?pour enregistrer le datagrid dans ma base??

merci!!!!!

4 réponses

cs_Kassidy Messages postés 97 Date d'inscription lundi 2 mai 2005 Statut Membre Dernière intervention 21 mars 2008 3
8 mars 2007 à 11:12
Je te propose ceci (moi je fait ca avec un datagridview avec une base de données MyQSL mais je pense que c'est la meme chose)

Si tu n’utilise pas une base de donnée Mysql,
modifie le code en conséquent, normalement c ‘est juste MySqlConnection a remplacé par SqlConnection et MySqlCommand par SqlCommand… en étant très positif, mais je préfère te proposer du code dont je suis sur de la fonctionnalité…

//prendra les requete
String Requete;

//nombre de ligne affecter par la requete
int NbreLigneAffecter;

//connection a la base
private static MySqlConnection MaConnection = new MySqlConnection();

String ConnectionBDD= @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PageAccueil.chaine;

MaConnection.ConnectionString = ConnectionBDD;

connection.ConnectionString =@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + PageAccueil.chaine;
MaConnection.ConnectionString = connection_bdd;

for(a=0,a<MonDataGrid.Rows.Count;a++){

        Requete="INSERT INTO ma_table(id,champs1,champs2) VALUES ('"+     MonDataGrid.Rows[a].Cells[1].Value +"','"+ MonDataGrid.Rows[a].Cells[2].Value +"','"+ MonDataGrid.Rows[a].Cells[3].Value +"')";

        MySqlCommand MaCommande = new MySqlCommand(Requete, MaConnection.);

        NbreLigneAffecter= MaCommande.ExecuteNonQuery();
}

MaConnection.Close();

en espérant que ça puisse t’aider…
3
cs_Kassidy Messages postés 97 Date d'inscription lundi 2 mai 2005 Statut Membre Dernière intervention 21 mars 2008 3
8 mars 2007 à 11:15
désolé pou les "?"... cest que je tappe mes messages sous word pour l'orthographe...pourtant je le passe après dans notpad pour enlever le formatage du texte mais rien y fait....
0
cs_kme Messages postés 14 Date d'inscription jeudi 3 juillet 2003 Statut Membre Dernière intervention 14 juin 2007
8 mars 2007 à 11:25
C'est exactement ce que je cherchais!!!!!
MERCI BEAUCOUP !!!!!!!
0
cs_Kassidy Messages postés 97 Date d'inscription lundi 2 mai 2005 Statut Membre Dernière intervention 21 mars 2008 3
8 mars 2007 à 11:28
de rien

(c cool c'est ma premiere reponse accepter )
0
Rejoignez-nous