Sdílet prostřednictvím


Postupy: Vložení řádků do databáze

Řádky vložíte do databáze přidáním objektů do přidružené kolekce LINQ to SQL Table<TEntity> a následným odesláním změn do databáze. LINQ to SQL přeloží změny do příslušných příkazů SQL INSERT .

Poznámka:

Můžete přepsat výchozí metody LINQ to SQL pro InsertUpdate, a Delete databázové operace. Další informace naleznete v tématu Přizpůsobení operací vložení, aktualizace a odstranění.

Vývojáři používající Sadu Visual Studio můžou použít Návrhář relací objektů k vývoji uložených procedur pro stejný účel.

Následující kroky předpokládají, že vás platný DataContext připojí k databázi Northwind. Další informace naleznete v tématu Postupy: Připojení do databáze.

Vložení řádku do databáze

  1. Vytvořte nový objekt, který obsahuje data sloupce, která se mají odeslat.

  2. Přidejte nový objekt do kolekce LINQ to SQL Table přidružené k cílové tabulce v databázi.

  3. Odešlete změnu do databáze.

Příklad

Následující příklad kódu vytvoří nový objekt typu Order a naplní ho příslušnými hodnotami. Potom přidá nový objekt do Order kolekce. Nakonec odešle změnu do databáze jako nový řádek v Orders tabulce.

// Create a new Order object.
Order ord = new Order
{
    OrderID = 12000,
    ShipCity = "Seattle",
    OrderDate = DateTime.Now
    // …
};

// Add the new object to the Orders collection.
db.Orders.InsertOnSubmit(ord);

// Submit the change to the database.
try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Make some adjustments.
    // ...
    // Try again.
    db.SubmitChanges();
}
' Create a new Order object.
Dim ord As New Order With _
{.OrderID = 12000, _
 .ShipCity = "Seattle", _
 .OrderDate = DateTime.Now}

' Add the new object to the Orders collection.
db.Orders.InsertOnSubmit(ord)

' Submit the change to the database.
Try
    db.SubmitChanges()
Catch e As Exception
    Console.WriteLine(e)
    ' Make some adjustments.
    ' ...
    ' Try again.
    db.SubmitChanges()
End Try

Viz také