linqsql语句
⑴ LINQ to sql 和一般的查询语句怎么什么区别
linq是面向对象的sql。也就是说,sql是向关系型数据库的查询,而linq实际上是对内存里的数据的查询。
虽然linq原来是对象查询,但经过ms的努力,可以通过表达式分析与实体到关系的映射(linq
to
sql),把linq转换为sql语句或是对xml的查询(linq
to
xml)。
因此,这种技术就成了对象到数据库记录的一个方便的映射、转化与操作的工具,你再也不必去去根据不同的情况用字符串拼接的办法生成sql,而是专心于对象模型的处理即可,你对于对象的修改最终都会被转换为对应的update,
insert,
delete等sql语句,在你submit时全部提交到数据库中。
综尔言之,linq
to
sql是一个数据库到对象结构的一个中间层,
他把对关系数据的管理转变为对象的操作,屏蔽了麻烦的sql,而且,还可以得到vs强大的智能感知功能的帮助。
⑵ 什么是ling to sql
ling to sql 首先得先解释 linq
LINQ = 语言集成查询(Language INtegrated Query)
是一组用于c#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以查询数据库相同的方式操作内存数据。
举个例子,比如你的C#代码里面,有个 Apple 对象,对象有 颜色这个属性
当给你一个 Apple 类的列表,要你返回所有 颜色为红色的。
如果没有 LINQ 的话, 那么就是 for 循环, 然后 if
使用 LINQ 的话, 就是有点像数据库的 SQL 语句的写法
var query =
from apple in appleList
where apple.Color == "红色"
select apple;
关于 LINQ 的例子代码:
http://hi..com/wangqing999/blog/item/40982215d2625371ca80c494.html
LINQ to SQL 呢?
就是首先是通过开发工具, 通过读取数据库中的表结构,来创建 C# / VB.NET 的代码
比如你有个表 Test, 有2个字段 id, value
那么开发工具会产生一个类, 叫 Test. 这个类有2个属性 id, value
然后你可以通过写 LINQ 的方式, 来查询数据库里面的数据。
var query =
from test in context.Test
select test;
关于 LINQ to SQL 的例子代码:
http://hi..com/wangqing999/blog/item/143b63da8185904594ee37ee.html
⑶ 问LinQ里的union和sqlserver里的union的区别
UNION用的比较多union all是直接连接,取伏行到得是所有值,记录可能有重复 union 是取唯一值,记录没有重复 1、UNION 的语法如下:
[SQL 语句 1]
UNION
[SQL 语句 2]
2、UNION ALL 的语法如下:
[SQL 语缺冲哗句 1]
UNION ALL
[SQL 语句 2]
效率:
UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同。
1、对重复结果的处理:UNION在进行表链接后会筛选掉重复的记录,Union All不会去除重复记录。
2、判纳对排序的处理:Union将会按照字段的顺序进行排序;UNION ALL只是简单的将两个结果合并后就返回。
从效率上说,UNION ALL 要比UNION快很多,所以,如果可以确认合并的两个结果集中不包含重复数据且不需要排序时的话,那么就使用UNION ALL。