Gewusst wie: Speichern von Daten aus einem Objekt in einer Datenbank

 

Veröffentlicht: Juli 2016

Sie können Daten aus Objekten in einer Datenbank speichern, indem Sie die Werte aus dem Objekt an eine der DBDirect-Methoden des TableAdapter übergeben (z. B. TableAdapter.Insert). Weitere Informationen finden Sie unter Übersicht über TableAdapters.

Um Daten aus einer Auflistung von Objekten zu speichern, durchlaufen Sie die Auflistung (z. B. in einer for-next-Schleife), und senden Sie die Werte der einzelnen Objekte mithilfe einer der DBDirect-Methoden des TableAdapter an die Datenbank.

Standardmäßig werden DBDirect-Methoden auf einem TableAdapter erstellt, der direkt gegen die Datenbank ausgeführt werden kann. Diese Methoden können direkt aufgerufen werden und benötigen keine DataSet-Objekte oder DataTable-Objekte für das Abgleichen von Änderungen beim Senden von Aktualisierungen an die Datenbank.

Hinweis

Wenn Sie einen TableAdapter konfigurieren, muss die Hauptabfrage ausreichend Informationen für die Erstellung der DBDirect-Methoden enthalten. Wenn ein TableAdapter z. B. für die Abfrage von Daten aus einer Tabelle konfiguriert wird, für die keine Primärschlüsselspalte definiert wurde, werden keine DBDirect-Methoden generiert.

TableAdapter-DBDirect-Methode Beschreibung
TableAdapter.Insert Fügt einer Datenbank neue Datensätze hinzu. Dadurch können Sie einzelne Spaltenwerte als Methodenparameter übergeben.
TableAdapter.Update Aktualisiert vorhandene Datensätze in einer Datenbank. Die Update-Methode übernimmt die Werte der ursprünglichen und der neuen Spalte als Methodenparameter. Anhand der ursprünglichen Werte wird der ursprüngliche Datensatz gefunden. Mit den neuen Werten wird dieser Datensatz anschließend aktualisiert.

Mit der TableAdapter.Update-Methode werden auch Änderungen in einem Dataset abgeglichen, das an die Datenbank zurückgesendet wird. Dazu wird DataSet, DataTable, DataRow oder ein Array aus DataRows als Methodenparameter verwendet.
TableAdapter.Delete Löscht vorhandene Datensätze aus der Datenbank basierend auf den ursprünglichen Spaltenwerten, die als Methodenparameter übergeben werden.

So speichern Sie neue Datensätze von einem Objekt in eine Datenbank

  • Erstellen Sie die Datensätze, indem Sie die Werte an die TableAdapter.Insert-Methode übergeben.

    Im folgenden Beispiel wird in der Tabelle Customers ein neuer Kundendatensatz erstellt. Dazu werden die Werte im currentCustomer-Objekt an die TableAdapter.Insert-Methode übergeben.

            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
    

So aktualisieren Sie vorhandene Datensätze von einem Objekt in eine Datenbank

  • Ändern Sie die Datensätze, indem Sie die TableAdapter.Update-Methode aufrufen und die neuen Werte zur Aktualisierung des Datensatzes sowie die ursprünglichen Werte zum Finden des Datensatzes übergeben.

    Hinweis

    Das Objekt muss die ursprünglichen Werte beibehalten, um sie an die Update-Methode übergeben zu können. In diesem Beispiel werden Eigenschaften mit einem orig-Präfix verwendet, um die ursprünglichen Werte zu speichern.

    Im folgenden Beispiel wird in der Tabelle Customers ein vorhandener Datensatz aktualisiert. Dazu werden die ursprünglichen und die neuen Werte im Customer-Objekt an die TableAdapter.Update-Methode übergeben.

            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
    

So löschen Sie vorhandene Datensätze aus einer Datenbank

  • Löschen Sie die Datensätze, indem Sie die TableAdapter.Delete-Methode aufrufen und die ursprünglichen Werte zum Finden des Datensatzes übergeben.

    Hinweis

    Das Objekt muss die ursprünglichen Werte beibehalten, um sie an die Delete-Methode übergeben zu können. In diesem Beispiel werden Eigenschaften mit einem orig-Präfix verwendet, um die ursprünglichen Werte zu speichern.

    Im folgenden Beispiel wird in der Tabelle Customers ein Datensatz gelöscht. Dazu werden die ursprünglichen Werte im Customer-Objekt an die TableAdapter.Delete-Methode übergeben.

            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
    

.NET Framework-Sicherheit

Sie benötigen die Berechtigung, den ausgewählten INSERT-, UPDATE- oder DELETE-Vorgang in der Tabelle in der Datenbank auszuführen.

Siehe auch

Objektbindung in Visual Studio
Gewusst wie: Herstellen einer Verbindung mit Daten in Objekten
Exemplarische Vorgehensweise: Herstellen einer Verbindung mit Daten in Objekten (Windows Forms)
Gewusst wie: Direktes Zugreifen auf die Datenbank mit einem TableAdapter
Binden von Windows Forms-Steuerelementen an Daten in Visual Studio
Herstellen von Datenverbindungen in Visual Studio
Vorbereiten der Anwendung auf den Empfang von Daten
Abrufen von Daten für die Anwendung
Binden von Steuerelementen an Daten in Visual Studio
Bearbeiten von Daten in der Anwendung
Überprüfen von Daten
Speichern von Daten