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