Partager via


Mise à jour hiérarchique

 

Date de publication : mars 2016

La mise à jour hiérarchique fait référence au processus d'enregistrement des données mises à jour (d'un groupe de données avec au moins deux tables connexes) dans une base de données en maintenant des règles d'intégrité référentielle. L'intégrité référentielle fait référence aux règles de cohérence fournies par les contraintes dans une base de données qui contrôlent le comportement des enregistrements connexes d'insertion, de mise à jour et de suppression. Par exemple, l'intégrité référentielle impose la création d'un enregistrement de client avant d'autoriser la création de commandes pour ce client.

L'enregistrement des données modifiées des tables de données connexes est une opération un peu plus complexe que l'enregistrement des données d'une table individuelle. Les commandes INSERT, UPDATE et DELETE pour chaque table connexe doivent être exécutées dans un ordre spécifique pour éviter de violer les contraintes d'intégrité référentielle. Prenons l'exemple d'une application d'enregistrement de commandes avec laquelle vous pouvez gérer à la fois les commandes et les clients nouveaux et existants. Si vous devez supprimer un client existant, vous devez tout d'abord supprimer tous les commandes de ce client avant de supprimer l'enregistrement du client. Si vous ajoutez un nouveau client (avec une commande), vous devez tout d'abord insérer le nouvel enregistrement de client avant d'insérer les commandes de ce client à cause des contraintes de clé étrangère qui sont dans les tables. Ces exemples montrent que vous devez extraire des sous-ensembles spécifiques de données et envoyer les mises à jour (insertions, mises à jour et suppressions) dans l'ordre approprié pour maintenir l'intégrité référentielle.

La fonctionnalité de mise à jour hiérarchique utilise un TableAdapterManager pour gérer les TableAdapters dans un groupe de données typé. Le composant TableAdapterManager est un composant généré par Visual Studio, il ne fait donc pas partie du .NET Framework. Pour plus d'informations sur la classe TableAdapterManager, consultez la section de référence de TableAdapterManager de la Vue d'ensemble de TableAdapterManager.

Si votre application utilise des groupes de données typés et permet aux utilisateurs de modifier les données dans des tables de données connexes (tables de données avec une relation de type un-à-plusieurs telles que Customers et Orders), vous souhaiterez probablement utiliser la mise à jour hiérarchique.

Dans cette section

Vue d'ensemble de la mise à jour hiérarchique
Décrit la mise à jour hiérarchique et fournit des informations détaillées sur son implémentation.

Vue d'ensemble de TableAdapterManager
Décrit un TableAdapterManager et fournit des descriptions du code TableAdapterManager généré par le Concepteur de DataSet.

Comment : activer et désactiver la mise à jour hiérarchique
Décrit comment définir la propriété Hierarchical Update d'un groupe de données typé pour générer le code afin d'enregistrer des tables connexes.

Comment : configurer des contraintes de clé étrangère dans un groupe de données
Décrit comment configurer les contraintes dans un groupe de données.

Comment : valider des modifications in-process sur des contrôles liés aux données avant d'enregistrer des données
Décrit comment arrêter toutes les modifications in-process dans les contrôles liés aux données sur un formulaire pour préparer la source de données avant de l'enregistrer.

Comment : définir l'ordre lors de l'exécution d'une mise à jour hiérarchique
Décrit comment définir la propriété UpdateOrder d'un TableAdapterManager pour contrôler l'ordre dans lequel les commandes INSERT, UPDATE et DELETE sont exécutées.

Comment : implémenter une mise à jour hiérarchique dans des projets Visual Studio existants
Décrit comment mettre à niveau une application qui a des tables de données connexes pour enregistrer des données à l'aide de TableAdapterManager.

Procédure pas à pas : enregistrement des données de tables de données connexes (Mise à jour hiérarchique)
Fournit des instructions pas à pas pour créer une application qui a des tables de données connexes et enregistrer les données à l'aide de TableAdapterManager.

Référence

DataSet

DataTable

Rubriques connexes

Utilisation de groupes de données dans des applications multicouches

Enregistrement des données

Création et modification de Datasets typés

TableAdapters

Objets DataSet, DataTable et DataView

DataTable, objets

Accès aux données dans Visual Studio