Speichern von Daten aus einem Objekt in einer Datenbank in .NET Framework-Anwendungen
Hinweis
Datasets und verwandte Klassen sind ältere .NET-Technologien aus den frühen 2000er Jahren, die es Anwendungen ermöglichen, mit Daten im Arbeitsspeicher zu arbeiten, während die Anwendungen von der Datenbank getrennt sind. Die Technologien sind besonders nützlich für Anwendungen, die es Benutzern ermöglichen, Daten zu ändern und die Änderungen wieder in der Datenbank zu speichern. Obwohl sich Datasets als sehr erfolgreiche Technologie erwiesen haben, empfehlen wir, dass neue .NET-Anwendungen Entity Framework Core verwenden. Entity Framework bietet eine natürlichere Möglichkeit, mit tabellarischen Daten als Objektmodelle zu arbeiten, und verfügt über eine einfachere Programmierschnittstelle.
Sie können Daten in Objekten in einer Datenbank speichern, indem Sie die Werte aus Ihrem Objekt an eine der DBDirect-Methoden der TableAdapter-Instanz übergeben (z. B. TableAdapter.Insert
). Weitere Informationen finden Sie unter TableAdapter.
Zum Speichern von Daten aus einer Sammlung von Objekten durchlaufen Sie die Objektsammlung in einer Schleife (z. B. in einer for-next-Schleife) und senden die Werte für jedes Objekt mithilfe einer der DBDirect
-Methoden der TableAdapter-Instanz an die Datenbank.
Standardmäßig werden DBDirect
-Methoden für eine TableAdapter-Instanz erstellt, die direkt für die Datenbank ausgeführt werden kann. Diese Methoden können direkt aufgerufen werden und erfordern keine DataSet- oder DataTable-Objekte zum Abstimmen von Änderungen, um Aktualisierungen an eine Datenbank zu senden.
Hinweis
Wenn Sie eine TableAdapter-Instanz konfigurieren, muss die Hauptabfrage genügend Informationen für die zu erstellenden DBDirect
-Methoden bereitstellen. Wenn beispielsweise eine TableAdapter-Instanz so konfiguriert ist, dass Daten aus einer Tabelle abgerufen werden, die keine Primärschlüsselspalte definiert hat, generiert sie keine DBDirect
-Methoden.
TableAdapter-DBDirect-Methode | BESCHREIBUNG |
---|---|
TableAdapter.Insert |
Fügt neue Datensätze zu einer Datenbank hinzu und ermöglicht es Ihnen, einzelne Spaltenwerte als Methodenparameter zu übergeben. |
TableAdapter.Update |
Aktualisiert vorhandene Datensätze in einer Datenbank. Die Update -Methode verwendet ursprüngliche und neue Spaltenwerte als Methodenparameter. Die ursprünglichen Werte werden verwendet, um den ursprünglichen Datensatz zu finden, und die neuen Werte werden verwendet, um diesen Datensatz zu aktualisieren.Die TableAdapter.Update -Methode wird auch verwendet, um Änderungen in einem Dataset mit der Datenbank abzugleichen, indem ein DataSet, eine DataTable, eine DataRow oder ein Array von DataRown als Methodenparameter verwendet wird. |
TableAdapter.Delete |
Löscht vorhandene Datensätze aus der Datenbank auf Grundlage der ursprünglichen Spaltenwerte, die als Methodenparameter übergeben werden. |
So speichern Sie neue Datensätze aus einem Objekt in einer Datenbank
Erstellen Sie die Datensätze, indem Sie die Werte an die
TableAdapter.Insert
-Methode übergeben.Im folgenden Beispiel wird ein neuer Kundendatensatz in der
Customers
-Tabelle erstellt, indem die Werte imcurrentCustomer
-Objekt an dieTableAdapter.Insert
-Methode übergeben werden.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); }
So aktualisieren Sie vorhandene Datensätze aus einem Objekt in einer Datenbank
Ändern Sie die Datensätze, indem Sie die
TableAdapter.Update
-Methode aufrufen, die neuen Werte zur Aktualisierung des Datensatzes übergeben und dann die ursprünglichen Werte übergeben, um den Datensatz zu finden.Hinweis
Ihr Objekt muss die ursprünglichen Werte beibehalten, um sie an die
Update
-Methode zu übergeben. In diesem Beispiel werden Eigenschaften mit einemorig
-Präfix verwendet, um die ursprünglichen Werte zu speichern.Im folgenden Beispiel wird ein vorhandener Datensatz in der
Customers
-Tabelle aktualisiert, indem die neuen und ursprünglichen Werte imCustomer
-Objekt an dieTableAdapter.Update
-Methode übergeben werden.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); }
So löschen Sie bestehende Datensätze aus einer Datenbank
Löschen Sie die Datensätze, indem Sie die
TableAdapter.Delete
-Methode aufrufen und die ursprünglichen Werte übergeben, um den Datensatz zu finden.Hinweis
Ihr Objekt muss die ursprünglichen Werte beibehalten, um sie an die
Delete
-Methode zu übergeben. In diesem Beispiel werden Eigenschaften mit einemorig
-Präfix verwendet, um die ursprünglichen Werte zu speichern.Im folgenden Beispiel wird ein Datensatz aus der
Customers
-Tabelle gelöscht, indem die ursprünglichen Werte imCustomer
-Objekt an dieTableAdapter.Delete
-Methode übergeben werden.
.NET-Sicherheit
Sie müssen über die Berechtigung zum Ausführen des ausgewählten INSERT
-, UPDATE
- oder DELETE
-Vorgangs für die Tabelle in der Datenbank verfügen.