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. 浮点数 (IEEE-754)

    浮点数又称"实数",一个浮点数包含三个部分 符号位(S) 阶码 有效数字 S:阶码:有效数字 浮点数是由科学二级制来表示的. 三种类型的浮点数: 短浮点数(32bit):  S(b ...

  2. 关于sed用法

    sed处理流程 sed的处理流程,简化后是这样的: 1.读入新的一行内容到缓存空间: 2.从指定的操作指令中取出第一条指令,判断是否匹配pattern: 3.如果不匹配,则忽略后续的编辑命令,回到第2 ...

  3. Android下百度地图开发(一):基础地图展示

    最终效果如: 这个需要详细说下,准备工作较为繁琐. 第一步:去百度申请一个开发者账号,新建一个android应用,会让你输入开发者SHA1,目前我只拿到开发版SHA1,发布版那里也填的是这个. 获取方 ...

  4. AngularJS基础知识1

    一.angularJS简介 1.什么是 AngularJS? AngularJS 是一个 JavaScript 框架.它是一个以 JavaScript 编写的库.AngularJS是协助搭建单页面工程 ...

  5. iOS开发路线简述

    1 iOS开发环境1.1 开发环境标准的配置是MacOSX+Xcode.MacOSX的话首选用苹果电脑,Macmini最便宜只要4000多就好了然后自己配一个显示器,MacBookPro 也可以,不推 ...

  6. java8 学习系列--NIO学习笔记

    近期有点时间,决定学习下java8相关的内容: 当然了不止java8中新增的功能点,整个JDK都需要自己研究的,不过这是个漫长的过程吧,以自己的惰性来看: 不过开发中不是有时候讲究模块化开发么,那么我 ...

  7. cocos2d学习记录

    视频 - http://www.manew.com/forum-105-3.html一个论坛帖 - http://www.zhihu.com/question/21114802官网 - http:// ...

  8. NSSet

    版权声明:本文为博主原创文章,未经博主允许不得转载. 一.NSSet的创建和初始化 创建一个空的NSSet集合:+ (void)set; 用数组来创建NSSet集合:+ (id)setWithArra ...

  9. SCRUM 流程的步骤2: Spring 计划

    1. product backlog. 2. 把故事进一步拆分成任务.   5. 形成Sprint backlog. Scrum master隆重登场,组织大家按照SCRUM流程,步步为营顺利开展工作 ...

  10. XPath 实例

    在本节,让我们通过实例来学习一些基础的 XPath 语法. XML实例文档 我们将在下面的例子中使用这个 XML 文档: "books.xml" : <?xml versio ...