linq to sql简单使用
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简单使用的更多相关文章
- MVC 学习(二)之Linq to Sql 简单Demo
Linq to Entities 已经我的一篇博文中阐述了,这里阐述一下简单的Linq to Sql 的增删改查.Linq to sql 与Linq to Entities虽然同属于DataBase- ...
- Linq to SQL 简单的增删改操作
Linq to SQL 简单的增删改操作. 新建数据库表tbGuestBook.结构如下: 新建web项目,完成相应的dbml文件.留言页面布局如下 <body> <form id= ...
- Linq to SQL 简单增删改查
用Linq大大减少了对数据库的一般操作所需的编码量.运行下面事例之前,首先建一个叫做Alien的数据库表. CREATE TABLE [dbo].[Aliens]( [Id] [int] IDE ...
- LINQ to Sql系列二 简单查询和联接查询
这一篇文章主要总结LINQ to sql的简单查询(单表查询)和联接查询(多表查询) 单表查询 需求是我们要输出TClass表中的结果.使用了from-in-select语句,代码如下: public ...
- 简单测试linq to sql性能
前些日子,做了一个物业收费系统,cs模式,用到了linq to sql 技术,这是我第一次使用这个东东写程序存取数据库,迷迷糊糊搞得一塌糊涂,当时有个同学他们找好的分页组件,然后写好了调用方 ...
- LINQ to SQL语句(7)之Exists/In/Any/All/Contains
适用场景:用于判断集合中元素,进一步缩小范围. Any 说明:用于判断集合中是否有元素满足某一条件:不延迟.(若条件为空,则集合只要不为空就返回True,否则为False).有2种形式,分别为简单形式 ...
- 年终巨献 史上最全 ——LINQ to SQL语句
LINQ to SQL语句(1)之Where 适用场景:实现过滤,查询等功能. 说明:与SQL命令中的Where作用相似,都是起到范围限定也就是过滤作用的,而判断条件就是它后面所接的子句.Where操 ...
- LINQ to SQL语句(20)之存储过程
在我们编写程序中,往往需要一些存储过程,在LINQ to SQL中怎么使用呢?也许比原来的更简单些.下面我们以NORTHWND.MDF数据库中自带的几个存储过程来理解一下. 1.标量返回 在数据库中, ...
- LINQ to SQL语句(10)之Insert
1.简单形式 说明:new一个对象,使用InsertOnSubmit方法将其加入到对应的集合中,使用SubmitChanges()提交到数据库. var newCustomer = new Custo ...
随机推荐
- Android项目打包开启proguard的混淆优化带来的问题
1.引入一个sdk以后.打包报错: [INFO] Unexpected error while evaluating instruction: [INFO] Class = [com/ ...
- mysql5.7 二进制包安装
1. 下载包 wget http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz 2. 解 ...
- C#关于params的用法(使用数量可变的参数)
有些方法需要传递个数不定的值进行运算.比如求最小值的方法.除了用容器外,还可以使用params来做 例子如下: using System; using System.Collections.Gener ...
- 工厂方法配置jdbc连接
package 配置方式.dbUtils; import java.io.InputStream; import java.sql.Connection; import java.sql.Driver ...
- USACO 1.4 ariprog 解题报告
这是继虫洞之后又让我为难的一个 剪枝题目,无论如何,做的再快,也只能过6个点,最后三个点也TLE.后来参考了一下标答,大概思路是这样的. 朴素算法就不多说了,枚举a,b然后判断就行,网上说这样优化到位 ...
- VS2003.NET在文件中查找卡死
不知怎么的,安装vs2003后,一点查找就卡死. 修复方法:修改devenv.exe的兼容性配置,勾选“禁用视觉主题”! 说实话,还真不知道这两者有什么关系?
- CAD2014以上版本不信任加载项解决方法
前一段时间做CAD插件支持版本升级遇到了一个很棘手的问题,CAD2014以上版本增加了受信任功能,每次用程序启动CAD并加载arx文件时都弹出对话框询问是否加载 我的解决方法如下:(仅供参考) 读取注 ...
- Mysql 记录
1.创建用户命令: <!---->mysql> CREATE USER yy IDENTIFIED BY '123'; yy表示你要建立的用户名,后面的123表示密码 上面建立的用户 ...
- [汇编语言]-第九章 在屏幕中间分别显示绿底红色,白底蓝色字符串"welcome to masm!"
;在屏幕中间分别显示绿色,绿底红色,白底蓝色字符串"welcome to masm!" assume cs:codesg,ds:datasg,ss:stacksg datasg s ...
- Python成长之路第二篇(3)_字典的置函数用法
字典的置函数用法(字典dict字典中的key不可以重复) class dict(object): """ dict() -> new empty dictionar ...