Partager via


Accéder directement à la base de données avec un TableAdapter dans les applications .NET Framework

Remarque

La DataSet classe et les classes associées sont des technologies .NET Framework héritées du début des années 2000 qui permettent aux applications d’utiliser des données en mémoire pendant que les applications sont déconnectées de la base de données. Les technologies sont particulièrement utiles pour les applications qui permettent aux utilisateurs de modifier les données et de conserver les modifications apportées à la base de données. Bien que les jeux de données soient une technologie éprouvée, l’approche recommandée pour les nouvelles applications .NET consiste à utiliser Entity Framework Core. Entity Framework offre un moyen plus naturel d’utiliser des données tabulaires en tant que modèles objet et dispose d’une interface de programmation plus simple.

En plus des InsertCommand, UpdateCommand, et DeleteCommand, les TableAdapters sont créés avec des méthodes qui peuvent être exécutées directement sur la base de données. Vous pouvez appeler ces méthodes (TableAdapter.Insert, TableAdapter.Updateet TableAdapter.Delete) pour manipuler des données directement dans la base de données.

Si vous ne souhaitez pas créer ces méthodes directes, définissez la propriété GenerateDbDirectMethods de TableAdapter sur false dans la fenêtre Propriétés. Si des requêtes sont ajoutées à un TableAdapter en plus de la requête principale de TableAdapter, elles sont des requêtes autonomes qui ne génèrent pas ces DbDirect méthodes.

Envoyer des commandes directement à une base de données

Appelez la méthode TableAdapter DbDirect qui effectue la tâche que vous essayez d’accomplir.

Pour insérer de nouveaux enregistrements directement dans une base de données

  • Appelez la méthode de Insert TableAdapter, en passant les valeurs de chaque colonne en tant que paramètres. La procédure suivante utilise la Region table de la base de données Northwind comme exemple.

    Remarque

    Si vous n’avez pas d’instance disponible, instanciez le TableAdapter que vous souhaitez utiliser.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Insert(5, "NorthWestern");
    

Pour mettre à jour des enregistrements directement dans une base de données

  • Appelez la méthode Update du TableAdapter en passant les nouvelles valeurs et les valeurs d'origine pour chaque colonne en tant que paramètres.

    Remarque

    Si vous n’avez pas déjà d’instance disponible, instanciez le TableAdapter que vous souhaitez utiliser.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Update(1, "East", 1, "Eastern");
    

Pour supprimer des enregistrements directement d’une base de données

  • Appelez la méthode Delete de TableAdapter, en passant les valeurs de chaque colonne en tant que paramètres de la méthode Delete. La procédure suivante utilise la Region table de la base de données Northwind comme exemple.

    Remarque

    Si vous n’avez pas d’instance disponible, instanciez le TableAdapter que vous souhaitez utiliser.

    NorthwindDataSetTableAdapters.RegionTableAdapter regionTableAdapter = 
        new NorthwindDataSetTableAdapters.RegionTableAdapter();
    
    regionTableAdapter.Delete(5, "NorthWestern");