跟LINQ to Object一样,LINQ to SQL能够使得你对Microsoft SQL Server的访问代码变得简洁,只要你的代码编译通过,那么就能生成正确的SQL语句,而不是报运行时错误,然后让你去检查SQL语句
LinQ to SQL可以用来取代传统的基于SQL语句的查询操作
但目前需要注意的是,在 LINQ 中,查询变量本身不执行任何操作且不返回任何数据的,查询变量本身只是存储查询命令,它只是存储在以后某个时刻执行查询时为生成结果而必需的信息。此概念称为“延迟执行”。
数据库表一般包含大量的数据,很少需要检索表中的所有行。通常只会根据特定操作或报告的需要提取表数据的子集
LINQ to SQL的基本语法包含如下的8个上下文关键字,如下
Where 操作
可以适用于实习过滤,查询等功能
Where有两种形式一种简单形式,一种关系条件形式,举两个例:
- 简单形式:
例如:使用where筛选1994年或以后雇用的雇员
SELECT * FROM Employees
WHERE HireData>=new DateTime(1944,1,1);
再比如:从“客户”表中选择国家为“墨西哥”的所有客户
SELECT * FROM Customers
WHERE Country='Mexico';
- 关系条件形式:
筛选 B_Record中bookStateId不等于5的数据
SELECT * FROM B_Record
WHERE bookStateId!=5
输入:
SELECT prod_name,prod_price
FROM Products
WHERE prod_price=3.49;
分析:
这条语句中从 Products 表中检索2个列,但不返回所有行,只返回prod_price值为3.49的行