光脚丫学LINQ(015):使用LINQ to SQL可以执行的操作

本文详细介绍了LINQtoSQL的使用方法,包括如何查询表中的信息、插入信息、更新和删除表中的信息。通过实例展示了如何使用LINQ查询来选择(投影)特定数据,并提供了插入、更新与删除数据库项的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

视频演示:http://u.115.com/file/f2f877c8d1

LINQ to SQL 支持您作为 SQL 开发人员所期望的所有关键功能。 您可以查询表中的信息、在表中插入信息以及更新和删除表中的信息。

选择
通过在您自己的编程语言中编写 LINQ 查询,然后执行此查询以检索结果,即可以实现选择(投影)。 LINQ to SQL 自行将所有必要操作转换为您所熟悉的必要 SQL 操作。 有关更多信息,请参见 LINQ to SQL。
在下面的示例中,检索来自伦敦的客户的公司名称并将其显示在控制台窗口中。
NorthwindDataContext db = new NorthwindDataContext(); var CompanyNames = from Customer in db.Customers where Customer.City == "London" select Customer.CompanyName; foreach (var Customer in CompanyNames) { Console.WriteLine(Customer); }

插入
若要执行 SQL Insert,只需向您已创建的对象模型添加对象,然后对 DataContext 调用 SubmitChanges 即可。
在下面的示例中,通过使用 InsertOnSubmit 向 Customers 表添加了一位新客户以及有关该客户的信息。
NorthwindDataContext db = new NorthwindDataContext(); Customers NewCustomer = new Customers(); NewCustomer.CompanyName = "SomeCompany"; NewCustomer.City = "London"; NewCustomer.CustomerID = "98128"; NewCustomer.PostalCode = "55555"; NewCustomer.Phone = "555-555-5555"; db.Customers.InsertOnSubmit(NewCustomer); db.SubmitChanges();

更新
若要 Update 某一数据库项,首先要检索该项,然后直接在对象模型中编辑它。 在修改了该对象之后,请对 DataContext 调用 SubmitChanges 以更新数据库。
在下面的示例中,检索来自伦敦的所有客户。 然后将其所在城市的名称从“London”更改为“London - Metro”。 最后,调用 SubmitChanges 以将所做的更改发送至数据库。 NorthwindDataContext db = new NorthwindDataContext(); var LondonCustomers = from Customer in db.Customers where Customer.City.Contains("London") select Customer; foreach (var Customer in LondonCustomers) { if (Customer.City == "London") { Customer.City = "London - Metro"; } } db.SubmitChanges();

删除
若要 Delete 某一项,请从其所属集合中移除该项,然后对 DataContext 调用 SubmitChanges 以提交所做的更改。
说明
LINQ to SQL 无法识别级联删除操作。 如果要在对行有约束的表中删除行,请参见如何:从数据库中删除行 (LINQ to SQL)。

在下面的示例中,从数据库中检索 CustomerID 为 98128 的客户。 然后,在确认检索到客户行之后,调用 DeleteOnSubmit 以将该对象从集合中移除。 最后,调用 SubmitChanges 以将删除内容转发至数据库。
NorthwindDataContext db = new NorthwindDataContext(); var DeletedCustomers = from Customer in db.Customers where Customer.CustomerID == "98128" select Customer; if (DeletedCustomers.Count() > 0) { db.Customers.DeleteOnSubmit(DeletedCustomers.First()); db.SubmitChanges(); }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值