1.新建一个winform项目。

2.添加一个Linq to Sql 类,命名为Northwind

3.打开服务器资源管理器,将表拖动到linq to sql 类,实体类就由Vs生成了

4.实例化DataContext类

NorthwindDataContext dc = new NorthwindDataContext();

5.下面就可以使用Linq to Sql啦。

a.查询Employees所有数据

var ee =
from employee in dc.Employees
select employee;

b.加个Where条件,查询Employee表所有City=London

            var e2 =
from employee in dc.Employees
where employee.City == "London"
select employee;

c.查询EmployeeID<5的数据

            var e3 =
from employee in dc.Employees
where employee.EmployeeID <
select employee;

d.查询雇佣日期在1993年1月1日以前的人员。

            var e4 =
from employee in dc.Employees
where employee.HireDate < new DateTime(, , )
select employee;

e.多个查询条件

            var e5 =
from employee in dc.Employees
where employee.HireDate < new DateTime(, , )
where employee.EmployeeID <
select employee;

f.like语句

           var e6 =
from employee in dc.Employees
where SqlMethods.Like(employee.FirstName, "%a%")
//where employee.FirstName.Contains("a") //等价于 like '%a%'
//where employee.FirstName.StartsWith("a") //等价于 like 'a%'
//where employee.FirstName.EndsWith("a") //等价于 like '%a'
select employee;

g.查询指定的列

           var e7 =
(from employee in dc.Employees
//select new { employee.EmployeeID, employee.FirstName };
select new
{
员工编号 = employee.EmployeeID,
员工姓名 = employee.FirstName,
尊称 = employee.TitleOfCourtesy
});

h.子查询

            var e8 =
from employee in dc.Employees
where employee.Orders.Count >
select employee;

i.内连接

            /**
* 查询位于伦敦的客户的订单
* SELECT *
* FROM [dbo].[Orders]
* INNER JOIN [dbo].[Customers] ON [Customers].[CustomerID] = [Orders].[CustomerID]
* WHERE [Customers].[City] = 'London'
*/
var e9 =
from cus in dc.Customers
join ord in dc.Orders on cus.CustomerID equals ord.CustomerID
where cus.City == "London"
select ord;

j.增加

            Employees m = new Employees();
m.LastName = "闪硕";
m.FirstName = "燕";
m.Title = "闪硕标题";
dc.Employees.InsertOnSubmit(m);
dc.SubmitChanges();

k.修改

            var e10 = dc.Employees.FirstOrDefault(employee => employee.LastName == "闪硕");
e10.City = "石家庄";
dc.SubmitChanges();

l.删除

            var e10 = dc.Employees.FirstOrDefault(employee => employee.LastName == "闪硕");
dc.Employees.DeleteOnSubmit(e10);
dc.SubmitChanges();

练习代码使用Vs2012,微软northwnd示例数据库

代码下载:http://pan.baidu.com/s/1pJyh0Mn  

linq to sql简单使用的更多相关文章

  1. MVC 学习(二)之Linq to Sql 简单Demo

    Linq to Entities 已经我的一篇博文中阐述了,这里阐述一下简单的Linq to Sql 的增删改查.Linq to sql 与Linq to Entities虽然同属于DataBase- ...

  2. Linq to SQL 简单的增删改操作

    Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...

  3. Linq to SQL 简单增删改查

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

  4. LINQ to Sql系列二 简单查询和联接查询

    这一篇文章主要总结LINQ to sql的简单查询(单表查询)和联接查询(多表查询) 单表查询 需求是我们要输出TClass表中的结果.使用了from-in-select语句,代码如下: public ...

  5. 简单测试linq to sql性能

         前些日子,做了一个物业收费系统,cs模式,用到了linq to sql 技术,这是我第一次使用这个东东写程序存取数据库,迷迷糊糊搞得一塌糊涂,当时有个同学他们找好的分页组件,然后写好了调用方 ...

  6. LINQ to SQL语句(7)之Exists/In/Any/All/Contains

    适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...

  7. 年终巨献 史上最全 ——LINQ to SQL语句

    LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...

  8. LINQ to SQL语句(20)之存储过程

    在我们编写程序中,往往需要一些存储过程,在LINQ to SQL中怎么使用呢?也许比原来的更简单些.下面我们以NORTHWND.MDF数据库中自带的几个存储过程来理解一下. 1.标量返回 在数据库中, ...

  9. LINQ to SQL语句(10)之Insert

    1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库. var newCustomer = new Custo ...

随机推荐

  1. 数据连接池——JNDI

    数据库连接有很多中方式,JDBC数据库的连接方式,前边我们已经介绍过了,而开发中我们经常使用的是DataBaseConnectionPool(数据库连接池,DBCP).数据库连接池到底是什么?它比jd ...

  2. mysql sql limit where having order

    SQL语句执行顺序及MySQL中limit的用法 . 分类: MySql2013-09-02 09:1315人阅读评论(0)收藏举报 写的顺序:select ... from... where.... ...

  3. sharepreference实现记住password功能

        SharePreference是用于保存数据用的.主要调用Context.getSharePreferences(String name, int mode)方法来得到SharePrefere ...

  4. 修改vim中的tab为4个空格

    记录一下,避免用时还得搜........ 1.临时修改 在vi中,set tabstop=4 或 set ts=4 2.永久修改 vi --version 查看要修改的文件 如果是vim的话,修改~/ ...

  5. Head First C#(赛狗日)

    实验背景: 人:Joe.Bob和AI希望参见赛狗赌博.最初,Joe有50元,Bob有75元,AI有45元.每次比赛前,他们都会各自决定是否下注以及所押的赌金.直到比赛前,他们都可以改变赌金,但是一旦比 ...

  6. [KMP求最小循环节][HDU3746][Cyclic Nacklace]

    题意 给你个字符串,问在字符串末尾还要添加几个字符,使得字符串循环2次以上. 解法 无论这个串是不是循环串 i-next[i] 都能求出它的最小循环节 代码: /* 思路:kmp+字符串的最小循环节问 ...

  7. 将数组,表的某一列转换为string字符串的方法

    样例:字符串数组为array,str为字符串数组转换成的字符串 string[] array = { etr, kdgj, 3454, tyt, gff }; string str=string.Jo ...

  8. linux重要的标准目录和文件

    linux重要的标准目录和文件 / 根目录,所有其他文件在根文件系统的子目录下 /bin 基本命令的二进制文件,存放linux下常用的命令和工具 /boot 引导加载器的固有文件,linux就是从这里 ...

  9. 2015.4.10-C#入门基础(三)

    今天,我们聊一聊一些基本问题: 1.修饰符有哪些?有什么区别呢? 首先大家想到的应该是 public:特点是所属类的成员和非所属类的成员都可以访问 private:只有所属类的成员才可以访问 prot ...

  10. celery 使用multiprocessing 问题记录

    报错: [2013-11-29 14:27:48,297: ERROR/MainProcess] Task app.add[e5d184c0-471f-4fc4-804c-f760178d4847] ...