Freigeben über


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

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.

Tipp

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 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
    
    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 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.

    Tipp

    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 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
    
    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 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.

    Tipp

    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 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
    
    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);
    }
    

Sicherheit

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

Siehe auch

Aufgaben

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

Konzepte

Objektbindung in Visual Studio

Binden von Windows Forms-Steuerelementen an Daten in Visual Studio

Binden von Steuerelementen an Daten in Visual Studio

Weitere Ressourcen

Herstellen von Datenverbindungen in Visual Studio

Vorbereiten der Anwendung auf den Empfang von Daten

Abrufen von Daten für die Anwendung

Bearbeiten von Daten in der Anwendung

Überprüfen von Daten

Speichern von Daten