Bonjour,
Après plusieurs recherches, notamment sur msdn, voici ce que j'ai trouvé. J'ai tenté de le faire, mais j'ai une erreur ![:?](https://www.developpez.net/forums/images/smilies/icon_confused.gif)
Update requiert un DeleteCommand valide lors du passage de la collection DataRow avec des lignes supprimées.
La procédure (lien):
1.
générer et remplir chaque DataTable de DataSet avec des données provenant d'une source de données à l'aide de DataAdapter .
Après connexion à la base :
1 2 3 4
| SqlDataAdapter oSqlDataAdapter = new SqlDataAdapter("SELECT * FROM AdressesNewsletter", Connexion);
DataSet oDataSet = new DataSet("DataSetMail");
DataSet Modifs = new DataSet();
oSqlDataAdapter.Fill(oDataSet, "AdressesNewsletter" |
);
2.
modifier les données dans les objets DataTable en ajoutant, mettant à jour ou supprimant des objets DataRow ;
1 2
| oDataSet.Tables["AdressesNewsletter"].Rows[2].Delete();
SuppressionAdresse.Visible = true; |
3.
appeler la méthode GetChanges pour créer un deuxième DataSet qui représente uniquement les modifications apportées aux données ;
1 2 3
|
Modifs = oDataSet.GetChanges();
oSqlDataAdapter.TableMappings.Add("Table", "AdressesNewsletter");// J'ai ajouté cette ligne de mapping car j'avais une erreur de compilation liée |
4.
appeler la méthode Update de DataAdapter, en passant le deuxième DataSet comme argument.
oSqlDataAdapter.Update(Modifs);
La j'ai l'erreur : Update requiert un DeleteCommand valide lors du passage de la collection DataRow avec des lignes supprimées.
Pourquoi ? Il me semble qu'il a tout ce qu'il lui faut...![:cry:](https://www.developpez.net/forums/images/smilies/icon_cry.gif)
5.
Appelez la méthode Merge pour fusionner les modifications du deuxième DataSet dans le premier.
6.
Appelez AcceptChanges sur DataSet. Vous pouvez également appeler RejectChanges pour annuler les modifications.
oDataSet.AcceptChanges();
Merci de votre aide !!!
Partager