Linq,全称Language Integrated Query,作为C#3.0新语法,是C#语言的一个扩展,可以将数据查询直接集成到编程语言本身中。 Linq表达式和SQL语句差不多,说白了就是颠倒sql语法, from where select ...,从from开始,以select/group by 结束,输出一个IEnumerable<T>或 IQueryable<T>的集合。世间万物皆系于一箭之上,存在即合理,技术是进步的,还可使用标准化查询运算符(SQO),继承自IEnuberable<T>接口,提供了 筛选、投影、聚合、排序等功能的方法,缺点就是语句太多庞大复杂。优点使用便捷,有即时加载(FindAll)和延时加载(Where)

EF(Entity Framework)Ado.NET中面向开发数据的一种技术,有Code First、Model First、Database First,是微软的一个ORM框架。

Lambda表达式的本质就是匿名函数,可以包含表达式和语句,也可以用于创建委托或表达式树类型,运算符为“=>”,读作 goes to,借用MVC企业级实战书中一图

            new Func<string, int>(delegate (string str) { return str.Length; });

            (delegate (string str) { return str.Length; });    //匿名方法

            (string str) => { return str.Length; };  //Lambda语句

            (string str) => str.Length;  //Lambda表达式

            (str) => str.Lenth;     //省略类型,让IDE去判断

            str => str.Lenth;       //去掉括号

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

USE [IBBC]
GO
CREATE TABLE [Table_1](
IDD INT PRIMARY KEY NOT NULL,
Nnmae VARCHAR() NULL
) INSERT [dbo].[Table_1] ([IDD], [Nnmae]) VALUES (, N'清高祖'),(, N'清高宗'),
(, N'清太祖'),(, N'Test1'),
(, N'Test2'),(, N'Test3'),
(, N'Test4'),(, N'Test5')

查询:

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("(SQO)方法語法: " +request1.IDD+" "+request1.Nnmae); Console.ReadKey();
}

添加:

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

(PS:add1.IDD为Int类型,所以永远不会等于null,故取其ToString(),下同))

修改:

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

删除:

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

权当做学习记录

--市人皆大笑,举手揶揄之

Linq to SQL 的增删改查操作的更多相关文章

  1. Linq to SQL 简单增删改查

    用Linq大大减少了对数据库的一般操作所需的编码量.运行下面事例之前,首先建一个叫做Alien的数据库表. CREATE TABLE [dbo].[Aliens](    [Id] [int] IDE ...

  2. linq to sql 中增删改查

    首先我先说一下,如果真的要用linq做项目的话,也会是比较方便的.已经尝试了在三层架构中应用linq to sql 比较方便. //有三个不同的数据库表,所以写法不一样 public class Li ...

  3. C#+Access 员工信息管理--简单的增删改查操作和.ini配置文件的读写操作。

    1.本程序的使用的语言是C#,数据库是Access2003.主要是对员工信息进行简单的增删改查操作和对.ini配置文件的读写操作. 2.代码运行效果如下: 功能比较简单.其中在得到查询结果后,在查询结 ...

  4. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  5. PHP程序中使用PDO对象实现对数据库的增删改查操作的示例代码

    PHP程序中使用PDO对象实现对数据库的增删改查操作(PHP+smarty) dbconn.php <?php //------------------------使用PDO方式连接数据库文件- ...

  6. 浅谈dataGridView使用,以及画面布局使用属性,对datagridview进行增删改查操作,以及委托使用技巧

        通过几天的努力后,对datagridview使用作一些简要的介绍,该实例主要运用与通过对datagridview操作.对数据进行增删改查操作时,进行逻辑判断执行相关操作.简单的使用委托功能,实 ...

  7. JDBC连接数据库及增删改查操作

    什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...

  8. Android SQLite 数据库 增删改查操作

    Android SQLite 数据库 增删改查操作 转载▼ 一.使用嵌入式关系型SQLite数据库存储数据 在Android平台上,集成了一个嵌入式关系型数据库--SQLite,SQLite3支持NU ...

  9. python3.6 使用 pymysql 连接 Mysql 数据库及 简单的增删改查操作

    1.通过 pip 安装 pymysql 进入 cmd  输入  pip install pymysql   回车等待安装完成: 安装完成后出现如图相关信息,表示安装成功. 2.测试连接 import ...

随机推荐

  1. SOLD原则

    借鉴: 1. 单一职责原则 单一职责原则 (Single Responsibility Principle,SRP) 指出,每个方法或类应当有且仅有 一个改变的理由.这意味着每个方法或类应当做一件事情 ...

  2. 【整理】强化学习与MDP

    [入门,来自wiki] 强化学习是机器学习中的一个领域,强调如何基于环境而行动,以取得最大化的预期利益.其灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步形成对刺激的 ...

  3. C++ 画星号图形——空心矩形(核心代码记录)

    int mi=(int)a; int mj=(int)b; ;i<mi;i++) { ;j<mj;j++) { ||i==mi-) cout<<"*"; | ...

  4. IOS网络第二天 - 07-发送JSON给服务器

    *************** #import "HMViewController.h" #import "MBProgressHUD+MJ.h" @inter ...

  5. shujuk

    数据库管理的目标:在适当的时候以适当的形式向适当的人提供适当的数据. 2. 数据管理的内容:组织业务的管理(学生的信息) :技术的管理(数据库的建立等) 3. 数据库管理的发展阶段:人工,文件,数据库 ...

  6. 农业银行快捷支付php版说明和实例代码

    接入的是shopnc,代码改改就可以用了,虽然不是一个完善的类,也可以按照类的方法直接调用,省得再去扣开发文档 农行在接收返回信息也会验证一次,还有一点就是页面通知返回结果 一定要用服务器通知,不然会 ...

  7. Thinking in Java——笔记(12)

    Error Handling with Exceptions The ideal time to catch an error is at compile time, before you even ...

  8. DP HDU1421

    搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  9. backbonejs

    前言: backbone由以下模块组成. 一.Event 监听事件,自定义事件.绑定到任何对象. http://www.css88.com/doc/backbone/#Events 这个是下面模块核心 ...

  10. 关于swap函数传值的问题

    #include <stdio.h> void swap(int * p3,int * p4); int main() {  int a = 9;  int b = 8;  int * p ...