<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Johnson的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/Johnson_hejun</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Johnson_hejun]]></copyright><item><title><![CDATA[关于SQL语句Count的一点细节]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/4580624</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/4580624</guid><author>Johnson_hejun</author><pubDate>Tue, 22 Sep 2009 16:32:00 +0800</pubDate><description><![CDATA[ count语句支持*、列名、常量、变量,并且可以用distinct关键字修饰， 并且count(列名)不会累计null的记录。下面随便用一些例子示范一下count的规则：比如对如下表做统计，所有列这里都用sql_variant类型来表示。  if (object_id (t_test )> 0 )    drop table t_test go create table t_test]]></description><category></category></item><item><title><![CDATA[UNION 和UNION ALL 的区别]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/4363767</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/4363767</guid><author>Johnson_hejun</author><pubDate>Mon, 20 Jul 2009 14:49:00 +0800</pubDate><description><![CDATA[ 在数据库中，UNION和UNION ALL关键字都是将两个结果集合并为一个，但这两者从使用和效率上来说都有所不同。UNION在进行表链接后会筛选掉重复的记录，所以在表链接后会对所产生的结果集进行排序运算，删除重复的记录再返回结果。实际大部分应用中是不会产生重复的记录，最常见的是过程表与历史表UNION。如：  select * from A  unio]]></description><category></category></item><item><title><![CDATA[LINQ体验系列文章导航 ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953613</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953613</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:16:00 +0800</pubDate><description><![CDATA[LINQ体验系列文章导航LINQ推荐资源推荐一个大家学习和交流LINQ的地方，就是博客园的LINQ专题和LINQ交流小组。LINQ专题中整理了有关LINQ方方面面的入门、进阶、深入的文章；学习中遇到什么问题或者疑问也可以LINQ交流小组去提问，往往你会得到意想不到的收获哦。LINQ专题：http://kb.cnblogs.com/zt/linq/LINQ小组：http://spac]]></description><category></category></item><item><title><![CDATA[LINQ体验(18)——LINQ to SQL语句之视图和继承支持]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953584</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953584</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:10:00 +0800</pubDate><description><![CDATA[视图我们使用视图和使用数据表类似，只需将视图从“服务器资源管理器/数据库资源管理器”拖动到O/R 设计器上，自动可以创建基于这些视图的实体类。我们可以同操作数据表一样来操作视图了。这里注意：O/R 设计器是一个简单的对象关系映射器，因为它仅支持 1:1 映射关系。换句话说，实体类与数据库表或视图之间只能具有 1:1 映射关系。不支持复杂映射（例如，将一个实体类映射到多个表）。但是，可以将一个实]]></description><category></category></item><item><title><![CDATA[LINQ体验(17)——LINQ to SQL语句之动态查询]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953583</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953583</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:09:00 +0800</pubDate><description><![CDATA[高级特性本文介绍LINQ的高级特性，其包括大家都关心的动态查询的用法，另外简单提下ID标识这个知识。动态查询有这样一个场景：应用程序可能会提供一个用户界面，用户可以使用该用户界面指定一个或多个谓词来筛选数据。这种情况在编译时不知道查询的细节，动态查询将十分有用。在LINQ中，Lambda表达式是许多标准查询运算符的基础，编译器创建lambda表达式以捕获基础查询方法（例如 Wher]]></description><category></category></item><item><title><![CDATA[LINQ体验(16)——LINQ to SQL语句之DataContext]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953573</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953573</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:08:00 +0800</pubDate><description><![CDATA[DataContextDataContext作为LINQ to SQL框架的主入口点，为我们提供了一些方法和属性，本文用几个例子说明DataContext几个典型的应用。创建和删除数据库CreateDatabase方法用于在服务器上创建数据库。DeleteDatabase方法用于删除由DataContext连接字符串标识的数据库。数据库的名称有以下方法来定义：如果数据库在连接字符串]]></description><category></category></item><item><title><![CDATA[LINQ体验(15)——LINQ to SQL语句之用户定义函数]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953572</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953572</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:07:00 +0800</pubDate><description><![CDATA[用户定义函数我们可以在LINQ to SQL中使用用户定义函数。只要把用户定义函数拖到O/R设计器中，LINQ to SQL自动使用FunctionAttribute属性和ParameterAttribute属性（如果需要）将其函数指定为方法。这时，我们只需简单调用即可。在这里注意：使用用户定义函数的时候必须满足以下形式之一，否则会出现InvalidOperationException异常情况]]></description><category></category></item><item><title><![CDATA[LINQ体验(14)——LINQ to SQL语句之存储过程]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953566</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953566</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:05:00 +0800</pubDate><description><![CDATA[存储过程在我们编写程序中，往往需要一些存储过程，在LINQ to SQL中怎么使用呢？也许比原来的更简单些。下面我们以NORTHWND.MDF数据库中自带的几个存储过程来理解一下。1.标量返回在数据库中，有名为Customers Count By Region的存储过程。该存储过程返回顾客所在"WA"区域的数量。ALTER PROCEDURE [dbo].[NonRowset]]]></description><category></category></item><item><title><![CDATA[LINQ体验(13)——LINQ to SQL语句之运算符转换和ADO.NET与LINQ to SQL ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953555</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953555</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:03:00 +0800</pubDate><description><![CDATA[运算符转换1.AsEnumerable：将类型转换为泛型 IEnumerable 使用 AsEnumerable 可返回类型化为泛型 IEnumerable 的参数。在此示例中，LINQ to SQL（使用默认泛型 Query）会尝试将查询转换为 SQL 并在服务器上执行。但 where 子句引用用户定义的客户端方法 (isValidProduct)，此方法无法转换为 SQL。解决方法是指]]></description><category></category></item><item><title><![CDATA[LINQ体验(12)——LINQ to SQL语句之对象标识和对象加载 ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953547</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953547</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:01:00 +0800</pubDate><description><![CDATA[对象标识运行库中的对象具有唯一标识。引用同一对象的两个变量实际上是引用此对象的同一实例。你更改一个变量后，可以通过另一个变量看到这些更改。 关系数据库表中的行不具有唯一标识。由于每一行都具有唯一的主键，因此任何两行都不会共用同一键值。 实际上，通常我们是将数据从数据库中提取出来放入另一层中，应用程序在该层对数据进行处理。这就是 LINQ to SQL 支持的模型。将数据作为行从]]></description><category></category></item><item><title><![CDATA[LINQ体验(11)——LINQ to SQL语句之Null语义和String/DateTime方法]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953544</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953544</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 17:00:00 +0800</pubDate><description><![CDATA[在本系列中，主要介绍LINQ to SQL基础的东西，因为LINQ太强大了，它对我们平常使用不同的数据源有着不同的内容，其包括对于SQL Server 数据库的LINQ to SQL；对于XML 文档的LINQ to XML；对于 ADO.NET 数据集的LINQ to DataSet；对于.NET 集合、文件、字符串等的LINQ to Objects。例外也出现了一些对LINQ支持的开源项目，例]]></description><category></category></item><item><title><![CDATA[LINQ体验(10)——LINQ to SQL语句之开放式并发控制和事务 ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953541</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953541</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:59:00 +0800</pubDate><description><![CDATA[从今天开始继续这个系列。告诉大家一个好消息：微软于2月1日发布了Visual Studio Team System 2008 Team Suite简体中文版，您可以在这里下载Visual Studio Team System 2008 Team Suite简体中文版90 天试用版。今天简单的学习下开放式并发控制和事务的内容，具体详细的内容现在可以参看MSDN了。Simultaneous Cha]]></description><category></category></item><item><title><![CDATA[LINQ体验(9)——LINQ to SQL语句之Insert/Update/Delete操作 ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953530</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953530</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:56:00 +0800</pubDate><description><![CDATA[我们继续讲解LINQ to SQL语句，这篇我们来讨论Insert/Update/Delete操作。这个在我们的程序中最为常用了。我们直接看例子。Insert/Update/Delete操作插入(Insert)1.简单形式说明：new一个对象，使用InsertOnSubmit方法将其加入到对应的集合中，使用SubmitChanges()提交到数据库。NorthwindDataC]]></description><category></category></item><item><title><![CDATA[LINQ体验(8)——LINQ to SQL语句之Union All/Union/Intersect和Top/Bottom和Paging和SqlMethods ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953513</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953513</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:54:00 +0800</pubDate><description><![CDATA[我们继续讲解LINQ to SQL语句，这篇我们来讨论Union All/Union/Intersect操作和Top/Bottom操作和Paging操作和SqlMethods操作 。Union All/Union/Intersect操作适用场景：对两个集合的处理，例如追加、合并、取相同项、相交项等等。Concat（连接）说明：连接不同的集合，不会自动过滤相同项；延迟。1.简单形]]></description><category></category></item><item><title><![CDATA[LINQ体验(7)——LINQ to SQL语句之Group By/Having和Exists/In/Any/All/Contains ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953507</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953507</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:52:00 +0800</pubDate><description><![CDATA[我们继续讲解LINQ to SQL语句，这篇我们来讨论Group By/Having操作符和Exists/In/Any/All/Contains操作符。Group By/Having操作符适用场景：分组数据，为我们查找数据缩小范围。说明：分配并返回对传入参数进行分组操作后的可枚举对象。分组；延迟1.简单形式：var q =    from p in db.Products]]></description><category></category></item><item><title><![CDATA[LINQ体验(6)——LINQ to SQL语句之Join和Order By ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953499</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953499</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:51:00 +0800</pubDate><description><![CDATA[Join操作适用场景：在我们表关系中有一对一关系，一对多关系，多对多关系等。对各个表之间的关系，就用这些实现对多个表的操作。说明：在Join操作中，分别为Join(Join查询), SelectMany(Select一对多选择)和GroupJoin(分组Join查询)。该扩展方法对两个序列中键匹配的元素进行inner join操作SelectMany说明：我们在写查询语句时，如果被]]></description><category></category></item><item><title><![CDATA[LINQ体验(5)——LINQ to SQL语句之Select/Distinct和Count/Sum/Min/Max/Avg ]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953488</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953488</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:49:00 +0800</pubDate><description><![CDATA[上一篇讲述了LINQ，顺便说了一下Where操作，这篇开始我们继续说LINQ to SQL语句，目的让大家从语句的角度了解LINQ，LINQ包括LINQ to Objects、LINQ to DataSets、LINQ to SQL、LINQ to Entities、LINQ to XML，但是相对来说LINQ to SQL在我们程序中使用最多，毕竟所有的数据都要在数据库运行着各种操作。所以先来学]]></description><category></category></item><item><title><![CDATA[LINQ体验(4)——LINQ简介和LINQ to SQL语句之Where]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953480</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953480</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:48:00 +0800</pubDate><description><![CDATA[查询表达式(LINQ)简介在上两篇我介绍了C#3.0新语特性和改进，这些新特性在我们编写程序时为我们提供了非常大的帮助。从这篇开始，我们开始一起来探讨LINQ。LINQ是Language Integrated Query的简称，它是集成在.NET编程语言中的一种特性。已成为编程语言的一个组成部分，在编写程序时可以得到很好的编译时语法检查，丰富的元数据，智能感知、静态类型等强类型语言的好处。]]></description><category></category></item><item><title><![CDATA[LINQ体验(3)——C# 3.0新语言特性和改进(下篇)]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953469</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953469</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:46:00 +0800</pubDate><description><![CDATA[上一篇我们介绍了C# 3.0新语言特性和改进上部分，这篇我们继续介绍剩下的部分。C# 3.0新语言特性和改进包括：自动属性(Auto-Implemented Properties) 隐含类型局部变量(Local Variable Type Inference) 匿名类型(Anonymous Types) 对象与集合初始化器(Object and Collection Ini]]></description><category></category></item><item><title><![CDATA[LINQ体验(2)——C# 3.0新语言特性和改进(上篇)]]></title><link>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953445</link><guid>https://blog.youkuaiyun.com/Johnson_hejun/article/details/3953445</guid><author>Johnson_hejun</author><pubDate>Tue, 03 Mar 2009 16:43:00 +0800</pubDate><description><![CDATA[在第一篇中，知道了Visual Studio 2008新特性，从这篇开始进入此系列的第二部分——介绍C# 3.0新语言特性和改进。总体来说，Visual Studio 2008和.NET 3.5是建立在.NET2.0核心的基础之上，.NET2.0核心本身将不再变化（如果不了解.NET2.0的朋友，请参看MSDN或者一些经典的书籍），C# 3.0新语言特性在.NET2.0基础上进行了改进，这些改]]></description><category></category></item></channel></rss>