Mise à jour d'une base Access avec Ado.NetDate de publication : 08/03/2005 , Date de mise a jour : 08/03/2005
Par
Selkis (selkis.developpez.com) Partie 2 . Modification, Suppression, Ajout d'un enregistrement, Mise à jour avec la Base. I. L'objet OleDbCommandBuilder II. Mise à jour de la Base de donnée III. Exemple de Suppression A. Récupération d'information B. Traitement de suppression C. Mise à jour avec la base
Pré-requis : Partie 1 (Déclaration de la connection, du DataAdapter, Remplissage du DataSet). Nous avons vu dans la partie 1 comment se connecter à une base Access en mode déconnecté, déclarer et parametrer un DataAdapter, un DataSet et lire les enregistrement contenu dans ce dernier pour remplir un DataGrid. Dans ce tutorial nous allons voir comment il est possible de modifier, supprimer et ajouter un enregistrement (toujours en mode déconnecté) dans notre Dataset à partir de notre Datagrid , puis mettre à jour notre base à l'aide de notre DataAdapter et de l'objet OleDbCommandBuilder. I. L'objet OleDbCommandBuilder
Pour se faciliter la tâche, lors de l'utilisation d'un DataSet, nous avons la possibilité grâce à l'objet
OleDbCommandBuilder de générer automatiquement les objets Command utilisés pour le renvoie des données entre
le DataSet et le DataAdapter. Pour créer un objet OleDbCommandBuilder, nous devons le déclarer en lui passant en paramètre l'objet DataAdapter à utiliser.
Maintenant il nous suffit d'utiliser les différentes méthode de l'objet pour créer et renvoyer les
objets Command qui nous conviennent soit :
II. Mise à jour de la Base de donnée
Pour mettre ensuite à jour des données et gérer le transfert de ces données modifiées dans notre base, nous devons nous interresser aux proprietés citées ci-dessous de l'objet DataAdapter
III. Exemple de Suppression
Exemple de suppression d'un enregistrement sélectionné dans un DataGrid Pour rappel , notre DataGrid se nomme Grid_client, la clé primaire de nos enregistrement est numérique et se situe dans le premier champ A. Récupération d'information
En premier lieu nous devons recuperer le numero de ligne de l'enregistrement à supprimer,
pour ce faire il suffit d'appliquer la méthode CurrentRowIndex à l'objet DataGrid qui nous renveras
le n° de la ligne actuellement sélectionnée.
Nous allons ensuite récuperer la clé primaire de cette ligne (qui se situe dans le premier champ de la ligne en cours)
grâce à la méthode Item (permet d'obtenir ou de definir la valeur d'une cellule spécifié) de l'objet DataGrid.
B. Traitement de suppression
Nous pouvons donc maintenant rechercher notre entregistrement dans notre DataSet (DtSet pour notre exemple). Pour ce faire nous allons creer un objet DataRow nommé Ligne (qui contiendra le fitre de notre selection , soit l'enregistrement que l'on doit supprimer) et lui affecter notre recherche.
Puis le supprimer par la méthode Delete (supprime un DataRow) de l'objet ligne créer précédement
(vous remarquerez le parmetre "0" de l'objet ligne, en effet notre filtre porté sur la clé primaire ne
nous retourne qu'une ligne qui correspond a l'index "0").
C. Mise à jour avec la base
|