Como: Inserir linhas no banco de dados
Você insere linhas em um banco de dados adicionando objetos à coleção LINQ to SQL Table<TEntity> associada e, em seguida, enviando as alterações para o banco de dados. O LINQ to SQL traduz suas alterações nos comandos SQL INSERT
apropriados.
Nota
Você pode substituir os métodos padrão LINQ to SQL para Insert
operações , Update
e Delete
banco de dados. Para obter mais informações, consulte Personalizando operações de inserção, atualização e exclusão.
Os desenvolvedores que usam o Visual Studio podem usar o Object Relational Designer para desenvolver procedimentos armazenados para a mesma finalidade.
As etapas a seguir pressupõem que um válido DataContext conecta você ao banco de dados Northwind. Para obter mais informações, consulte Como conectar-se a um banco de dados.
Para inserir uma linha no banco de dados
Crie um novo objeto que inclua os dados da coluna a serem enviados.
Adicione o novo objeto à coleção LINQ to SQL
Table
associada à tabela de destino no banco de dados.Envie a alteração para o banco de dados.
Exemplo
O exemplo de código a seguir cria um novo objeto do tipo Order
e o preenche com valores apropriados. Em seguida, adiciona o novo objeto à Order
coleção. Finalmente, ele envia a alteração para o banco de dados como uma nova linha na Orders
tabela.
// 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