首页 > 代码库 > Linq to SQL 的增删改查操作

Linq to SQL 的增删改查操作

 Linq,全称Language Integrated Query,是C#语言的一个扩展,可以将数据查询直接集成到编程语言本身中。

 Linq分为查询语法和方法语法,说白了查询语法就是 from where select ,而方法语法的基础操作需要用到lambda表达式

 Form 选择数据源   Where 指定条件  Select 选择元素    lambda表达式中的 => 理解为 goes to ,左边是参数

 =>到底是什么玩意,我刚开始是无论如何都无法理解,后来思路如下

 1.相对于SQL, select * from Table b      b就可以代表Table,个人理解为表对象,然后可以b.列

 2.相对于Linq, from b in Table ...          b就可以代表Table,select后面可以写成b.列

 3.相对于Lambda,  db.Table_1.SingleOrDefault(b => b.IDD == id);  b就代表Table_1的对象,当然b在这里是一个变量

 Linq操作的是数据对象,所以需要先建立一个实体对象模型,操作的表如下

USE [IBBC]GOCREATE TABLE [Table_1](IDD INT PRIMARY KEY NOT NULL,Nnmae VARCHAR(15) NULL    )INSERT [dbo].[Table_1] ([IDD], [Nnmae]) VALUES (100, N清高祖),(102, N清高宗),(103, N清太祖),(104, NTest1),(105, NTest2),(106, NTest3),(107, NTest4),(108, NTest5)

查询:

public void Dbquery(int id) {   IBBCEntities db = new IBBCEntities();   var request = from d in db.Table_1          where d.IDD == id          select new { d.IDD, d.Nnmae };
foreach (var item in request) { Console.WriteLine("查詢語法: " + item); } var request1 = db.Table_1.SingleOrDefault(b => b.IDD == id); Console.WriteLine("方法語法: " +request1.IDD+" "+request1.Nnmae); Console.ReadKey();}

添加:

  //添加:  var add1 = db.Table_1.SingleOrDefault(c=>c.IDD==1010);   if (add1.IDD==null)    {       Table_1 tb = new Table_1        {           IDD = 1010,           Nnmae = "張三丰"         };        db.Table_1.Add(tb);        db.SaveChanges();     }           

修改:

//修改var update1 = db.Table_1.SingleOrDefault(c => c.IDD == 1010);if (update1.IDD!=null){    update1.Nnmae = "張君寶";    db.SaveChanges();}

删除:

 //刪除 var delete1 = db.Table_1.SingleOrDefault(c=>c.IDD==1010); if (delete1.IDD!=null) {    db.Table_1.Remove(delete1);    db.SaveChanges(); }

 

权当做学习记录

 

Linq to SQL 的增删改查操作