Comment : enregistrer les données d'un objet dans une base de données
Date de publication : mars 2016
Vous pouvez enregistrer dans une base de données les données contenues dans un objet en passant les valeurs de votre objet à l'une des méthodes DBDirect (par exemple, TableAdapter.Insert
) du TableAdapter. Pour plus d'informations, consultez Vue d'ensemble de TableAdapter.
Pour enregistrer des données provenant d'une collection d'objets, parcourez la collection d'objets (par exemple, une boucle for-next) et envoyez les valeurs pour chaque objet à la base de données à l'aide de l'une des méthodes DBDirect du TableAdapter.
Par défaut, les méthodes DBDirect sont créées sur un TableAdapter qui peut être exécuté directement par rapport à la base de données. Ces méthodes peuvent être appelées directement et ne nécessitent aucun objet DataSet ou DataTable pour rapprocher des modifications pour envoyer des mises à jour à une base de données.
Notes
Lorsque vous configurez un TableAdapter, la requête principale doit fournir assez d'informations pour la création des méthodes DBDirect. Par exemple, si un TableAdapter est configuré pour interroger les données d'une table qui n'a pas de colonne de clé primaire définie, il ne génère pas de méthodes DBDirect.
Méthode DBDirect de TableAdapter | Description |
---|---|
TableAdapter.Insert |
Ajoute de nouveaux enregistrements à une base de données, ce qui vous permet de passer des valeurs de colonne individuelles comme paramètres de méthode. |
TableAdapter.Update |
Met à jour des enregistrements existants dans une base de données. La méthode Update prend des valeurs de colonne nouvelles et d'origine comme paramètres de méthode. Les valeurs d'origine servent à localiser l'enregistrement d'origine et les nouvelles valeurs à mettre à jour cet enregistrement.La méthode TableAdapter.Update permet également de rapprocher les modifications apportées à un groupe de données dans la base de données en prenant une DataSet, DataTable, DataRow ou un tableau de DataRow comme paramètres de méthode. |
TableAdapter.Delete |
Supprime des enregistrements existants de la base de données en fonction des valeurs de colonne transmises en tant que paramètres de méthode. |
Pour enregistrer de nouveaux enregistrements provenant d'un objet dans une base de données
Créez les enregistrements en passant les valeurs à la méthode
TableAdapter.Insert
.L'exemple suivant crée un enregistrement client dans la table
Customers
en passant les valeurs dans l'objetcurrentCustomer
à la méthodeTableAdapter.Insert
.private void AddNewCustomers(Customer currentCustomer) { customersTableAdapter.Insert( currentCustomer.CustomerID, currentCustomer.CompanyName, currentCustomer.ContactName, currentCustomer.ContactTitle, currentCustomer.Address, currentCustomer.City, currentCustomer.Region, currentCustomer.PostalCode, currentCustomer.Country, currentCustomer.Phone, currentCustomer.Fax); }
Private Sub AddNewCustomer(ByVal currentCustomer As Customer) CustomersTableAdapter.Insert( currentCustomer.CustomerID, currentCustomer.CompanyName, currentCustomer.ContactName, currentCustomer.ContactTitle, currentCustomer.Address, currentCustomer.City, currentCustomer.Region, currentCustomer.PostalCode, currentCustomer.Country, currentCustomer.Phone, currentCustomer.Fax) End Sub
Pour mettre à jour des enregistrements existants provenant d'un objet dans une base de données
Modifiez les enregistrements en appelant la méthode
TableAdapter.Update
et en passant les nouvelles valeurs pour mettre à jour l'enregistrement et en passant les valeurs d'origine pour localiser l'enregistrement.Notes
Votre objet doit conserver les valeurs d'origine pour les passer à la méthode
Update
. Cet exemple utilise des propriétés avec un préfixeorig
pour stocker les valeurs d'origine.L'exemple suivant met à jour un enregistrement existant dans la table
Customers
en passant les valeurs nouvelles et d'origine dans l'objetCustomer
à la méthodeTableAdapter.Update
.private void UpdateCustomer(Customer cust) { customersTableAdapter.Update( cust.CustomerID, cust.CompanyName, cust.ContactName, cust.ContactTitle, cust.Address, cust.City, cust.Region, cust.PostalCode, cust.Country, cust.Phone, cust.Fax, cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax); }
Private Sub UpdateCustomer(ByVal cust As Customer) CustomersTableAdapter.Update( cust.CustomerID, cust.CompanyName, cust.ContactName, cust.ContactTitle, cust.Address, cust.City, cust.Region, cust.PostalCode, cust.Country, cust.Phone, cust.Fax, cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax) End Sub
Pour supprimer des enregistrements existants d'une base de données
Supprimez les enregistrements en appelant la méthode
TableAdapter.Delete
et en passant les valeurs d'origine pour localiser l'enregistrement.Notes
Votre objet doit conserver les valeurs d'origine pour les passer à la méthode
Delete
. Cet exemple utilise des propriétés avec un préfixeorig
pour stocker les valeurs d'origine.L'exemple suivant supprime un enregistrement de la table
Customers
en passant les valeurs d'origine dans l'objetCustomer
à la méthodeTableAdapter.Delete
.private void DeleteCustomer(Customer cust) { customersTableAdapter.Delete( cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax); }
Private Sub DeleteCustomer(ByVal cust As Customer) CustomersTableAdapter.Delete( cust.origCustomerID, cust.origCompanyName, cust.origContactName, cust.origContactTitle, cust.origAddress, cust.origCity, cust.origRegion, cust.origPostalCode, cust.origCountry, cust.origPhone, cust.origFax) End Sub
Sécurité .NET Framework
Vous devez avoir l'autorisation pour exécuter les instructions INSERT, UPDATE ou DELETE sur la table dans la base de données.
Voir aussi
Liaison d'objets dans Visual Studio
Comment : se connecter à des données dans des objets
Procédure pas à pas : connexion à des données dans des objets (Windows Forms)
Comment : accéder directement à la base de données avec un TableAdapter
Liaison de contrôles Windows Forms à des données dans Visual Studio
Connexion aux données dans Visual Studio
Préparation de votre application pour recevoir des données
Extraction de données dans votre application
Liaison de contrôles à des données dans Visual Studio
Modification des données dans votre application
Validation des données
Enregistrement des données