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

SQL Server 2005新功能之TSQL手册

a8116255316年前 (2010-06-30)系统运维10

以下的文章主要是对SQL Server 2005新功能之TSQL的介绍,我们大家度知道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新功能-TSQL的介绍,望你能有所收获。 

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

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

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

分享给朋友:

“SQL Server 2005新功能之TSQL手册” 的相关文章

windows 7/8.1正在启动windows时间长的解决方法

windows 7/8.1正在启动windows时间长的解决方法

正在启动windows时间长怎么办 小编带来了Windows 7/8.1正在启动windows时间长解决方法,假如有朋友在安装完Windows系统之后一直停留在“正在启动windows”的话,不妨试一试下文的方法哦~ 原因:Windows 7/8.1不完全支持UEFI,需要CSM(Comp...

上帝不止一个 更多Windows7 快捷模式.

上帝不止一个 更多Windows7 快捷模式.

国外媒体CNET NEWS就这个“上帝模式”和微软Windows部门主管Steven Sinofsky进行邮件交流后得知,这其实只是众多快捷方式中的一个,Sinofsky在邮件里给出了十多个这类快捷方式的关键字符串。 它们的建立方法和之前的“上帝模式”一样,在任意位置新建的一个文件夹,然后改名即可...

windows 7系统件夹和文件都不显示名字如何解决

windows 7系统件夹和文件都不显示名字如何解决

假如碰到电脑里的文件夹和文件全都不显示名字了(如下图),是不是电脑中毒了呢 请教下笔者有没好的解决方法!下面是笔者给出的答案,希望能够帮助到大家! 首先打开你用来装图片的文件夹(缩略图下面的文字不显示的文件夹),然后但击工具栏上的“查看”选择“平铺”, 下面就是关键:要按住SHIFT键不...

windows 7系统开机后出现黑屏提示Windows无法启动

windows 7系统开机后出现黑屏提示Windows无法启动

一些用户的Windows 7系统开机后出现黑屏,代码为 Windows无法启动: WindowsSystem32ConfigSystem”。这个问题该如何修复呢?现在小编就给大家分析一下吧。 其实这个代码的意思是引导文件丢失了,引导文件(NTLDR)一般存放于C盘根目录下,是一个具有隐藏和只读属性...

Windows7播放电影视频蓝屏无论什么格式都会蓝屏

Windows7播放电影视频蓝屏无论什么格式都会蓝屏

问:我在Windows 7 Ultimate X64下播放电影视频时,不管什么格式都会蓝屏,错误代码“0x00000124”。换解码器、播放器不行,换驱动、内存也不管用。在不同的电脑上也试过,仍然蓝屏。请问是哪里的问题,如何解决 答:64位 Windows 7直接使用PotPlayer x64就...

windows7系统下让所有文件夹都使用同一种视图的方法

windows7系统下让所有文件夹都使用同一种视图的方法

Windows 7系统可以对每个文件夹进行个性化视图设置,可以根据自己的个人喜好和实际需要更改文件或文件夹图标的大小,或者让文件或文件夹以列表、平铺等方式显示。但是,假如你对N个文件夹视图进行了风格各异的个性设置,现在又想让所有文件夹都使用同一种视图怎么办呢 手工一个一个修改,你OUT了,非累得手抽...