SQL Server 2005比2000要好的理由

数据库 SQL Server
文章主要描述的是SQL Server 2005在实际操作中的一些新的功能,以及与2000相比起好处的比较,以下就是文章的主要内容描述。

以下的文章主要描述的是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  
  • 1.
  • 2.
  • 3.

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  
  • 1.
  • 2.
  • 3.
  • 4.

3. 排名

select * from(   
select OrderId, Freight, RANK() OVER(order by Freight) as rank from Orders   
) a   
where rank between 20 and 30  
  • 1.
  • 2.
  • 3.
  • 4.

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  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

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  
  • 1.
  • 2.
  • 3.
  • 4.

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

 

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/'   
)   
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.

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

【编辑推荐】

  1. SQL Server 2005高可用性于日志传送
  2. 实现SQL Server索引的代码示例
  3. SQL Server创建表所要用到的代码
  4. 创建SQL Server数据库更是实在
  5. SQL Server 2005商业智能功能浅析
责任编辑:佚名 来源: 51CTO.com
相关推荐

2011-04-18 13:02:08

SQL Server SQL Server

2010-06-17 17:11:03

SQL Server

2010-06-18 13:18:29

SQL Server

2010-07-19 09:13:20

升级到SQL Serv

2010-06-28 09:28:32

SQL Server

2010-07-09 11:22:18

SQL Server

2009-12-03 11:04:54

Visual Stud

2011-04-06 17:30:41

SQL ServerSQL

2010-07-16 10:35:19

SQL Server

2010-11-10 15:23:55

SQL SERVER

2011-02-28 17:41:20

SQL Server

2010-06-17 15:09:49

SQL Server

2010-07-07 17:24:32

SQLServer20

2010-07-23 12:55:29

SQL Server

2010-07-09 11:06:13

SQL Server

2010-10-21 15:13:20

SQL Server系

2011-03-29 15:27:26

SQL Server 动态管理

2010-06-30 08:34:27

SQL Server

2015-07-22 17:27:41

SQL SERVER 链接

2011-09-01 16:13:37

Visual StudSQL Server 存储过程
点赞
收藏

51CTO技术栈公众号