Ado.net Dataset Update, Insert, delete (Problème de mise à jour dans la BD)
loheslath
Messages postés1Date d'inscriptionmercredi 20 février 2008StatutMembreDernière intervention 4 janvier 2009
-
4 janv. 2009 à 21:33
NHenry
Messages postés15112Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention13 avril 2024
-
5 janv. 2009 à 22:24
Je voudrais utiliser Ado.net Dataset pour insérer, mettre à jour et supprimer des données dans une base de données SqlServer.
L'insertion marche bien, mais le mise à jour et la suppression ne marche pas (voir code ci-dessous). En effet quand je fais la suppression de l'enregistrement il est bien supprimé dans le dataset (j'ai vérifié par déboguage) mais ma requête DELETE n'est pas répercutée dans la base de données après l'appel de la méthode DataAdapter.Update(...). Il en est de même pour la mise à jour. Or avec les mêmes méthodes utilisées l'insertion marche bien.
LES CODES DES TROIS OPERATIONS :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
// Mise à jour de la source de données à partir du DataSet
adapter.Update(oDataSet, "Categories");
// Rechargement des données de la source mise à jour
oDataSet.Clear();
adapter.Fill(oDataSet, "Categories");
// Affichage du contenu de oDataSet après insertion de données
Console.WriteLine(" *** Liste des catégories après l'insertion *** ");
for (int i = 0; i < oDataSet.Tables["Categories"].Rows.Count; i++)
{
Console.WriteLine("\t{0}\t{1}", oDataSet.Tables["Categories"].Rows[i][0].ToString(), oDataSet.Tables["Categories"].Rows[i][1].ToString());
}
Console.WriteLine("\n");
// Mise à jour de la source de données à partir du DataSet
adapter.Update(oDataSet, "Categories");
// Rechargement des données de la source mise à jour
oDataSet.Clear();
adapter.Fill(oDataSet, "Categories");
// Affichage du contenu de oDataSet après mise à jour de données
Console.WriteLine(" *** Liste des catégories après la mise à jour *** ");
for (int i = 0; i < oDataSet.Tables["Categories"].Rows.Count; i++)
{
Console.WriteLine("\t{0}\t{1}", oDataSet.Tables["Categories"].Rows[i][0].ToString(), oDataSet.Tables["Categories"].Rows[i][1].ToString());
}
Console.WriteLine("\n");
Console.ReadLine();
// Affichage du contenu de oDataSet après Suppression de données
Console.WriteLine(" *** Liste des catégories après Suppression *** ");
for (int i = 0; i < oDataSet.Tables["Categories"].Rows.Count; i++)
{
Console.WriteLine("\t{0}\t{1}", oDataSet.Tables["Categories"].Rows[i][0].ToString(), oDataSet.Tables["Categories"].Rows[i][1].ToString());
}
oConnection.Close();
Console.ReadLine();
}
catch (Exception e)
{
Console.WriteLine("L'erreur suivante a été rencontrée :" + e.Message);
Console.ReadLine();
}
}
}
}