如何:将行插入数据库中
你可以将对象添加到关联的 LINQ to SQL Table<TEntity> 集合,然后将更改提交到数据库,以此在数据库中插入行。 LINQ to SQL 会将你所做的更改转换为相应的 SQL INSERT
命令。
备注
可以替代 Insert
、Update
和 Delete
数据库操作的 LINQ to SQL 默认方法。 有关详细信息,请参阅自定义插入、更新和删除操作。
使用 Visual Studio 的开发人员可以使用对象关系设计器来开发用于实现相同目的的存储过程。
以下步骤假定您已通过有效的 DataContext 连接到 Northwind 数据库。 有关详细信息,请参阅如何:连接到数据库。
向数据库中插入行
创建一个包含要提交的列数据的新对象。
将这个新对象添加到与数据库中的目标表关联的
Table
集合。将更改提交到数据库。
示例
下面的代码示例创建一个类型为 Order
的新对象,并用相应的值填充此对象。 然后,它将这个新对象添加到 Order
集合中。 最后,它将所做的更改提交到数据库中,使之成为 Orders
表中的一个新行。
// 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