alcoveforlove
Messages postés12Date d'inscriptionmercredi 8 décembre 2004StatutMembreDernière intervention18 novembre 2011
-
16 mai 2011 à 19:38
alcoveforlove
Messages postés12Date d'inscriptionmercredi 8 décembre 2004StatutMembreDernière intervention18 novembre 2011
-
18 mai 2011 à 14:28
BONJOUR à tous.
débutant en ado.net je cherche à mettre à jour les données de ma base de données via un dataset. toute aide sera la bienvenue. Merci d'avance...
OleDbConnection cnA; // connexion à access
string access = @"Provider=Microsoft.Jet.OLEDB.4.0;" + @"Data Source=bdcontact.mdb"; // chaine de connexion
cnA = new OleDbConnection(access); // initialise ma chaine de connexion
cnA.Open();
// création d'une commnande qui va contenir une requete
OleDbCommand cmd = new OleDbCommand("select * from personne", cnA);
// initialisation d'un dataset conteneur pour le résultat de la requete
DataSet ds = new DataSet("dst");
// l'adapter permet de communiquer avec la base il exécute la requete
OleDbDataAdapter adap = new OleDbDataAdapter(cmd);
DataRow r = ds.Tables[0].NewRow(); // je crée un row
ds.Tables[0].Rows.Add(r); // j'ajoute mon row vide au dataset pour pouvoir accueillir l'insert
max += 1; // j'incrémente le nombre d'enregistrements pour pouvoir obtenir le prochain id de la base
String insert = "INSERT INTO personne values ("+max+",'1', 'Prenom', 'Note','','','','','','','','','','','','')";
adap.InsertCommand = new OleDbCommand(insert,cnA); // je crée une commande insert
Arthenius
Messages postés1182Date d'inscriptionmercredi 21 janvier 2004StatutMembreDernière intervention 6 septembre 201114 18 mai 2011 à 11:42
string _update = "UPDATE personne set cprenom='toi' where cnom like 'VARLOTEAUX'";
adap.UpdateCommand = new OleDbCommand(_update, cnA);
cnA.Open();
adap.Update(ds); // je mets à jour (il ne se passe rien grrr !!!
cnA.Close();
> tu change la commande update puis tu lance un update sur le Dataset
normale qui ne se passe rien (car tu n'a pas modifier de données dans ton dataset)
modifie la valeur du prenom dans le dataset puis lance le adap.update(ds);
je t'invite a regarder mes sources, il y a un exemple qui devrait t'aider a comprendre le fonctionnement de tout cela
Arthenius
"Ce qui ne me tue pas, me rend plus fort..."
DataRow r = ds.Tables[0].NewRow(); // je crée un row
ds.Tables[0].Rows.Add(r); // j'ajoute mon row vide au dataset pour pouvoir accueillir l'insert
max += 1; // j'incrémente le nombre d'enregistrements pour pouvoir obtenir le prochain id de la base
String insert = "INSERT INTO personne values ("+max+",'1', 'Prenom', 'Note','','','','','','','','','','','','')";
adap.InsertCommand = new OleDbCommand(insert,cnA); // je crée une commande insert