Sdílet prostřednictvím


Postupy: Ukládání dat z objektu do databáze

 

Publikováno: duben 2016

Uložení dat v objekty do databáze, a to předáním hodnot z objektu do jednoho objektu TableAdapter DBDirect – metody (například TableAdapter.Insert). Další informace naleznete v tématu TableAdapter – přehled.

Uložení dat z kolekce objektů, projděte kolekci objektů (například pro další smyčky) a odesílají hodnoty pro každý objekt do databáze pomocí jedné z metod TableAdapter DBDirect.

Ve výchozím nastavení jsou DBDirect – metody vytvářeny v TableAdapter, které mohou být provedeny přímo v databázi. Tyto metody lze volat přímo a nevyžadují DataSet nebo DataTable objekty sloučit změny, aby bylo možné odesílat aktualizace databáze.

Poznámka

Při konfiguraci TableAdapter hlavního dotazu musí poskytnout dostatek informací v pořadí pro DBDirect metody mají být vytvořeny. Například pokud TableAdapter je konfigurován pro dotaz na data z tabulky, který nemá definovaný sloupec primárního klíče, jeho negeneruje DBDirect – metody.

TableAdapter DBDirect – metoda Popis
TableAdapter.Insert Přidá nových záznamů do databáze, což vám umožní předávat hodnoty jednotlivých sloupců jako parametry metody.
TableAdapter.Update Aktualizace existujících záznamů v databázi.Update Metoda má sloupec původní a nové hodnoty jako parametry metody. Původní hodnoty slouží k vyhledání původní záznam a nové hodnoty slouží k aktualizaci záznamů.

 TableAdapter.Update Metoda slouží také sloučit změny v datové sadě zpět do databáze tím, že DataSet, DataTable, DataRow, nebo pole DataRows jako parametry metody.
TableAdapter.Delete Odstraní existující záznamy z databáze založené na původní hodnoty sloupce předané jako parametry metody.

K uložení nové záznamy z objektu do databáze

  • Vytvořte záznamy předáním hodnoty, které TableAdapter.Insert Metoda.

    Následující příklad vytvoří nový záznam zákazníka v Customers předáním hodnot v tabulce currentCustomer objektu TableAdapter.Insert Metoda.

            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
    

Chcete-li aktualizovat existující záznamy z objektu do databáze

  • Upravit záznamy voláním TableAdapter.Update Metoda a předáním v nové hodnoty aktualizaci záznamu a předáním v původní hodnoty vyhledejte záznam.

    Poznámka

    Váš objekt musí zachovat původní hodnoty, aby bylo možné předat je k Update Metoda. Tento příklad používá vlastnosti s orig Předpona k uložení původní hodnoty.

    Následující příklad aktualizuje existující záznam v Customers předáním nové a původní hodnoty v tabulce Customer objektu TableAdapter.Update Metoda.

            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
    

Chcete-li odstranit existující záznamy z databáze

  • Odstranění záznamů pomocí volání TableAdapter.Delete Metoda a předáním původní hodnoty vyhledejte záznam.

    Poznámka

    Váš objekt musí zachovat původní hodnoty, aby bylo možné předat je k Delete Metoda. Tento příklad používá vlastnosti s orig Předpona k uložení původní hodnoty.

    Následující příklad odstraní záznam z Customers předáním původní hodnoty v tabulce Customer objektu TableAdapter.Delete Metoda.

            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
    

Zabezpečení rozhraní .NET Framework

Musí mít oprávnění k provádění vybrané vložení, aktualizace nebo odstranění v tabulce v databázi.

Viz také

Uložit data do databáze