当前位置:首页 > 系统运维 > 正文内容

SQL Server 2005比2000要好的理由

a8116255316年前 (2010-07-07)系统运维12

以下的文章主要描述的是SQL Server 2005在实际操作中的一些新的功能,SQL Server 2005数据与SQL Server 2000数据库相比而言其改进还是很大的,其中有些还是非常实用的。 举几个例子来简单说明 这些例子我引用了Northwind库。

1. TOP 表达式

SQL Server 2000的TOP是个固定值,是不是觉得不爽,现在改进了。

前n名的订单

declare @n int   set @n = 10   select TOP(@n) * from Orders  

2. 分页

不知各位过去用SQL Server 2000是怎么分页的,大多都用到了临时表。SQL Server 2005一句话就支持分页,性能据说也非常不错。

按Freight从小到大排序,求20到30行的结果

select * from(   select OrderId, Freight, ROW_NUMBER() OVER(order by Freight) as row from Orders   ) a   where row between 20 and 30  

3. 排名

select * from(   select OrderId, Freight, RANK() OVER(order by Freight) as rank from Orders   ) a   where rank between 20 and 30  

4. try ... catch

SQL Server 2000没有异常,T-SQL必须逐行检查错误代码,对于习惯了try catch程序员,2005是不是更加亲切:

SET XACT_ABORT ON 打开 try功能

BEGIN TRY   begin tran   insert into Orders(CustomerId) values(-1)   commit tran   print 'commited'   END TRY   BEGIN CATCH   rollback   print 'rolled back'   END CATCH  

5. 通用表达式CTE

通过表达式可免除你过去创建临时表的麻烦。

www.knowsky.com

例子:结合通用表达式进行分页

WITH OrderFreight AS(   select OrderId, Freight, ROW_NUMBER() OVER(order by Freight) as row from Orders   )   select OrderId, Freight from OrderFreight where row between 10 and 20  

特别,通过表达式还支持递归。

6. 直接发布Web Service

想要把store procedure变成Web Service就用这个吧,.net, IIS都不需要,通过windows 2003的HTTP Protocol Stack直接发布WebService,用这个功能需要Windows 2003 sp1

DataSet CustOrdersOrders(string customerID)   CREATE ENDPOINT Orders_Endpoint   state=started   as http(   path='/sql/orders',   AUTHENTICATION=(INTEGRATED),   ports=(clear)   )   for soap(   WebMethod 'CustOrdersOrders'(   name='Northwind.dbo.CustOrdersOrders'   ),   wsdl=default,   database='Northwind',   namespace='http://mysite.org/'   )   

Web Service就发布好了,敲入http://localhost/sql/orders wsdl得到wsdl 。以上的相关内容就是对SQL Server 2005新功能的介绍,望你能有所收获。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://www.2345hao.cn/blog/index.php/post/21589.html

分享给朋友:

“SQL Server 2005比2000要好的理由” 的相关文章

windows 7系统开机提示press any key to restart的故障分析及解

windows 7系统开机提示press any key to restart的故障分析及解

Windows 7 64位系统开机后提示"press any key to restart",无法进入系统了,具体现象如下所示: 故障分析: 故障的主要原因还是硬盘的问题,可以先检查是不是接触不良或坏了,进行修复或更换即可。 解决方法: 1、开机按F8不动到高级选项出现在松手,选“...

各个都很实用:windows 7系统电脑日常小技巧

各个都很实用:windows 7系统电脑日常小技巧

在使用Windows 7的时候很多用户对于系统的很多功能并不是很了解,也正是因为这样的不了解导致很多用户在使用Win 之后并不能体验Windows 7的功能便携和强大功能,导致很多用户对于Windows 7的认识还是比较模糊,不过为了让更多的朋友了解Windows 7的特点和便携应用,今天就为大家汇...

Skylake平台不能通过USB接口装windows 7系统

Skylake平台不能通过USB接口装windows 7系统

Intel会在2015年推出Broadwell、Skylake两代14nm处理器,前者可以使用9系芯片组,Skylake升级到了LGA1151插槽,需要搭配新的100系列芯片组,但初期的Skylake-S又不能超倍频,所以今年Q2季度开始会很混杂。Skylake一代会支持DDR4,100系列芯片组升...

Ubuntu 14.10上安装新的字体图文教程

Ubuntu 14.10上安装新的字体图文教程

像Ubuntu这种开源系统,一般都自带有好多漂亮的字体,不过假如您想使用您熟悉的字体,可以通过在Ubuntu或其它Linux系统上安装字体,帮助用户在使用开源OS平台上更好的视图体验。 软件名称:Ubuntu 14.04 官方正式版软件大小:752MB更新时间:2014-05-07 Ubun...

Ubuntu 14.04安装Wine以便使用Windows应用

Ubuntu 14.04安装Wine以便使用Windows应用

假如你想要在Ubuntu上使用Windows应用,就需要用到Wine了,除了支持Linux系统外,Wine还可运行于其他系统,是个非常使用的软件,下面小编就以Ubuntu 14.04为例,给大家介绍下Ubuntu 14.04安装Wine的步骤。 Ubuntu 14.04安装Wine的步骤 1...

windows 7如何将常用文件夹添加到任务栏以提高工作效率

windows 7如何将常用文件夹添加到任务栏以提高工作效率

每一位用户的Windows 7系统上,或多或少都会有一到两个自己常用的文件夹,那么如何将这些常用的文件夹添加到任务栏上,增加我们的工作效率呢 许多用户只知道移动exe程序文件到任务栏,却不知道文件夹怎么移,下面小编通过图文教程来告诉大家方法。 操作方法: 1、首先将你使用频率最高的那个文件夹重命...