Udostępnij za pośrednictwem


Instrukcje: Wstawianie wierszy do bazy danych

Wiersze można wstawić do bazy danych, dodając obiekty do skojarzonej kolekcji LINQ to SQL Table<TEntity> , a następnie przesyłając zmiany do bazy danych. LINQ to SQL tłumaczy zmiany na odpowiednie polecenia SQL INSERT .

Uwaga

Można zastąpić domyślne metody LINQ to SQL dla Insertoperacji , Updatei Delete bazy danych. Aby uzyskać więcej informacji, zobacz Dostosowywanie operacji wstawiania, aktualizowania i usuwania.

Deweloperzy korzystający z programu Visual Studio mogą używać Projektant obiektowych do tworzenia procedur składowanych w tym samym celu.

W poniższych krokach przyjęto założenie, że prawidłowe DataContext połączenie z bazą danych Northwind. Aby uzyskać więcej informacji, zobacz Instrukcje: Połączenie do bazy danych.

Aby wstawić wiersz do bazy danych

  1. Utwórz nowy obiekt zawierający dane kolumny do przesłania.

  2. Dodaj nowy obiekt do kolekcji LINQ to SQL Table skojarzonej z tabelą docelową w bazie danych.

  3. Prześlij zmianę do bazy danych.

Przykład

Poniższy przykład kodu tworzy nowy obiekt typu Order i wypełnia go odpowiednimi wartościami. Następnie dodaje nowy obiekt do kolekcji Order . Na koniec przesyła zmianę do bazy danych jako nowy wiersz w Orders tabeli.

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

Zobacz też