Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Du kan uppdatera rader i en databas genom att ändra medlemsvärdena för de objekt som är associerade med LINQ till SQL-samlingen Table<TEntity> och sedan skicka ändringarna till databasen. LINQ till SQL översätter dina ändringar till lämpliga SQL-kommandon UPDATE .
Kommentar
Du kan åsidosätta LINQ till SQL-standardmetoder för Insert, Updateoch Delete databasåtgärder. Mer information finns i Anpassa infognings-, uppdaterings- och borttagningsåtgärder.
Utvecklare som använder Visual Studio kan använda Object Relational Designer för att utveckla lagrade procedurer i samma syfte.
Följande steg förutsätter att en giltig DataContext ansluter dig till Northwind-databasen. Mer information finns i Så här: Anslut till en databas.
Uppdatera en rad i databasen
Fråga databasen om raden ska uppdateras.
Gör önskade ändringar i medlemsvärdena i det resulterande LINQ-till SQL-objektet.
Skicka ändringarna till databasen.
Exempel
I följande exempel frågas databasen efter order #11000 och sedan ändras värdena ShipName för och ShipVia i det resulterande Order objektet. Slutligen skickas ändringarna av dessa medlemsvärden till databasen som ändringar i kolumnerna ShipName och 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