﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-真的有外星人吗？-随笔分类-SQL Server</title><link>http://www.blogjava.net/nokiaguy/category/31393.html</link><description>假如这个世界上只剩下你一个人，当你正坐在屋子里的时候，这时突然响起了敲门声，那么会是谁呢？</description><language>zh-cn</language><lastBuildDate>Sun, 01 Nov 2009 20:49:02 GMT</lastBuildDate><pubDate>Sun, 01 Nov 2009 20:49:02 GMT</pubDate><ttl>60</ttl><item><title>在SQL Server2005/2008中对记录进行分组，并获得每组前N条记录</title><link>http://www.blogjava.net/nokiaguy/archive/2009/10/31/300512.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 31 Oct 2009 13:08:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/10/31/300512.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/300512.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/10/31/300512.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/300512.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/300512.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 有一个表，三个字段：km、kh和cj。其中km为科目号、kh为考生号、cj为成绩，现对km和kh进行分组，并获得每组前2条记录（按cj从高到低排序）。基本思想是为每组加一个序号列，再用where取序号小于等于20的。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/10/31/300512.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/300512.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-10-31 21:08 <a href="http://www.blogjava.net/nokiaguy/archive/2009/10/31/300512.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server2005杂谈（5）：将聚合记录集逆时针和顺时针旋转90度</title><link>http://www.blogjava.net/nokiaguy/archive/2009/02/21/255956.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 21 Feb 2009 07:38:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/02/21/255956.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/255956.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/02/21/255956.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/255956.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/255956.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 有时我们需要将聚合结果进行旋转，也就是说将要聚合的字段值作为字段名，将聚合结果作为记录。这可以使用传统的方法来解决，但在SQL Server2005提供了pivot函数可以更容易地解决这个问题。同时，还可以使用unpivot函数进行逆项的操作。 &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/02/21/255956.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/255956.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-02-21 15:38 <a href="http://www.blogjava.net/nokiaguy/archive/2009/02/21/255956.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server2005杂谈（3）：四个排名函数（row_number、rank、dense_rank和ntile）的比较</title><link>http://www.blogjava.net/nokiaguy/archive/2009/02/05/253440.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Thu, 05 Feb 2009 12:21:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/02/05/253440.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/253440.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/02/05/253440.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/253440.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/253440.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍了SQL Server2005提供的四个排名函数（row_number、rank、dense_rank和ntile），其中row_number函数最常用，可以使用这个函数实现web分页功能。rank和dense_rank函数可以处理字段重复值问题。而ntile函数用于对记录进行分组处理。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/02/05/253440.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/253440.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-02-05 20:21 <a href="http://www.blogjava.net/nokiaguy/archive/2009/02/05/253440.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server2005杂谈（2）：公用表表达式（CTE）的递归调用</title><link>http://www.blogjava.net/nokiaguy/archive/2009/02/01/252890.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sun, 01 Feb 2009 15:42:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/02/01/252890.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/252890.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/02/01/252890.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/252890.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/252890.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: CTE不仅可以简化嵌套SQL语句，还可以方便地实现递归调用。如要查询一个部门下面的所有子部门，或某个省下面的所有市和行政区，只需要一个CTE就可以查出来。当然，如果不使用CTE，实现这个是比较麻烦的，如果只想用SQL实现，需要使用到游标等技术。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/02/01/252890.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/252890.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-02-01 23:42 <a href="http://www.blogjava.net/nokiaguy/archive/2009/02/01/252890.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server2005杂谈（1）：使用公用表表达式（CTE）简化嵌套SQL</title><link>http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 31 Jan 2009 06:40:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/252787.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/252787.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/252787.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在SQL Server中可以直接在SQL语句中嵌套其他的SQL语句，但当嵌套层次太多时，会使SQL语句难以理解和维护，而如果使用表变量（临时表）又会增加I/O开销。为了解决这个问题，在SQL Server2005中提供了CTE。使用CTE可以使被嵌套的SQL模块化，从而大大增加了SQL语句的可读性，同时又不会增加太多的I/O开锁。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/252787.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-01-31 14:40 <a href="http://www.blogjava.net/nokiaguy/archive/2009/01/31/252787.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server 2005服务无法启动的解决方法</title><link>http://www.blogjava.net/nokiaguy/archive/2009/01/20/252114.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Tue, 20 Jan 2009 14:39:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2009/01/20/252114.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/252114.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2009/01/20/252114.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/252114.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/252114.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 今天想使用一下SQL Server 2005，启动SQL Server Management Studio后，发现连不了数据库了，看了下SQL Server的服务，竟然是停止状态，启动它，但无法启动，但看日志后，发现了这样的志信息：“C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf" 已压缩，但未驻留在只读数据库或文件组中。必须将此文件解压缩。”&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2009/01/20/252114.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/252114.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2009-01-20 22:39 <a href="http://www.blogjava.net/nokiaguy/archive/2009/01/20/252114.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>妙用SQL Server聚合函数和子查询迭代求和</title><link>http://www.blogjava.net/nokiaguy/archive/2008/09/02/226334.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Tue, 02 Sep 2008 04:53:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/09/02/226334.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/226334.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/09/02/226334.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/226334.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/226334.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍了如何通过SQL Server的sum聚合函数和多层子查询来进行迭代求和，并在最后给出了通过建立函数的方式来简化迭代求和的SQL语句。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/09/02/226334.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/226334.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-09-02 12:53 <a href="http://www.blogjava.net/nokiaguy/archive/2008/09/02/226334.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用Session和唯一索引字段实现通用Web分页功能</title><link>http://www.blogjava.net/nokiaguy/archive/2008/08/23/223881.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Sat, 23 Aug 2008 09:55:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/08/23/223881.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/223881.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/08/23/223881.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/223881.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/223881.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍了一种通过Web系统中的Session对象和数据表的唯一索引字段来实现Web分页的方法。这种方法是通用的，适合于所有的数据库（SQL Server、Oracle、access、paradox等），并且不需要在数据库中建立任何资源（如存储过程、视图等）。需要的唯一条件就是表中要有一个唯一索引字段。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/08/23/223881.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/223881.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-08-23 17:55 <a href="http://www.blogjava.net/nokiaguy/archive/2008/08/23/223881.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server2005杂谈（4）：在SQL Server2005中按列连接字符串的三种方法</title><link>http://www.blogjava.net/nokiaguy/archive/2008/06/25/210522.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 25 Jun 2008 05:16:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/06/25/210522.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/210522.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/06/25/210522.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/210522.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/210522.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文介绍了按列连接一个字符串的三种方法，其中一种方法是使用CLR（在本例中使用C#）来实现SQL Server2005的扩展聚合函数的方式来实现。这种方式更加灵活，但在实现上也更加复杂。如果能很好地掌握它，就可以实现非常“酷”的功能！&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/06/25/210522.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/210522.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-06-25 13:16 <a href="http://www.blogjava.net/nokiaguy/archive/2008/06/25/210522.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用Transact-SQL进行数据导入导出方法详解</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/21/201836.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 21 May 2008 02:02:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/21/201836.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/201836.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/21/201836.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/201836.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/201836.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 本文讨论了如何通过Transact-SQL以及系统函数OPENDATASOURCE和OPENROWSET在同构和异构数据库之间进行数据的导入导出，并给出了详细的例子以供参考。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/21/201836.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/201836.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-21 10:02 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/21/201836.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SQL Server各种导入导出数据方式的比较</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200379.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Wed, 14 May 2008 04:22:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200379.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/200379.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/14/200379.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/200379.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/200379.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在SQL Server中主要有三种方式导入导出数据：使用Transact-SQL对数据进行处理；调用命令行工具bcp处理数据；使用数据转换服务(DTS)对数据进行处理。这三种方法各有其特点，下面就它们的主要特点进行比较。   &nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/14/200379.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/200379.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-14 12:22 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/14/200379.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在SQL Server2005中进行错误捕捉</title><link>http://www.blogjava.net/nokiaguy/archive/2008/05/09/199421.html</link><dc:creator>银河使者</dc:creator><author>银河使者</author><pubDate>Fri, 09 May 2008 01:57:00 GMT</pubDate><guid>http://www.blogjava.net/nokiaguy/archive/2008/05/09/199421.html</guid><wfw:comment>http://www.blogjava.net/nokiaguy/comments/199421.html</wfw:comment><comments>http://www.blogjava.net/nokiaguy/archive/2008/05/09/199421.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/nokiaguy/comments/commentRss/199421.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/nokiaguy/services/trackbacks/199421.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 任何程序都可能出现错误，在SQL Server中执行Transact-SQL也不例外。如果在Transact-SQL中发生了错误，一般有两种捕捉错误的方法，一种是在客户端代码（如 c#、delphi等)中使用类似try...catch的语句进行捕捉；另外一种就是在Transact-SQL中利用Transact-SQL本身提供的错误捕捉机制进行捕捉。如果是因为Transact-SQL语句的执行而产生的错误，如键值冲突，使用第一种和第二种方法都可以捕捉，但是如果是逻辑错误，使用客户端代码进行捕捉就不太方便。因此，本文就如何使用Transact-SQL进行错误捕捉进行了讨论。&nbsp;&nbsp;<a href='http://www.blogjava.net/nokiaguy/archive/2008/05/09/199421.html'>阅读全文</a><img src ="http://www.blogjava.net/nokiaguy/aggbug/199421.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/nokiaguy/" target="_blank">银河使者</a> 2008-05-09 09:57 <a href="http://www.blogjava.net/nokiaguy/archive/2008/05/09/199421.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>