Bagikan melalui


Cara: Memperbarui Baris dalam Database

Anda dapat memperbarui baris dalam database dengan memodifikasi nilai anggota objek yang terkait dengan koleksi Table<TEntity> LINQ to SQL lalu mengirimkan perubahan tersebut ke database. LINQ to SQL menerjemahkan perubahan Anda ke dalam perintah SQL UPDATE yang sesuai.

Catatan

Anda bisa mengambil alih metode default LINQ to SQL untuk operasi database Insert, Update, dan Delete. Untuk informasi selengkapnya, lihat Mengustomisasi Operasi Sisipkan, Perbarui, dan Hapus.

Pengembang yang menggunakan Visual Studio bisa menggunakan Object Relational Designer untuk mengembangkan prosedur tersimpan untuk tujuan yang sama.

Langkah-langkah berikut mengasumsikan bahwa DataContext yang valid menyambungkan Anda ke database Northwind. Untuk informasi selengkapnya, lihat Cara: Menyambungkan ke Database.

Untuk memperbarui baris dalam database

  1. Buat kueri database untuk baris yang akan diperbarui.

  2. Buat perubahan yang diinginkan untuk nilai anggota pada objek LINQ to SQL yang dihasilkan.

  3. Kirim perubahan tersebut ke database.

Contoh

Contoh berikut mengkueri database untuk urutan #11000, lalu mengubah nilai ShipName dan ShipVia dalam objek Order yang dihasilkan. Terakhir, perubahan pada nilai anggota ini akan dikirimkan ke database sebagai perubahan dalam kolom ShipName dan ShipVia.

// Query the database for the row to be updated.
var query =
    from ord in db.Orders
    where ord.OrderID == 11000
    select ord;

// Execute the query, and change the column values
// you want to change.
foreach (Order ord in query)
{
    ord.ShipName = "Mariner";
    ord.ShipVia = 2;
    // Insert any additional changes to column values.
}

// Submit the changes to the database.
try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Provide for exceptions.
}
' Query the database for the row to be updated.
Dim ordQuery = _
    From ord In db.Orders _
    Where ord.OrderID = 11000 _
    Select ord

' Execute the query, and change the column values
' you want to change.
For Each ord As Order In ordQuery
    ord.ShipName = "Mariner"
    ord.ShipVia = 2
    ' Insert any additional changes to column values.
Next

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

Lihat juga