ASP教程之SQL Server 2005: 使用新的ranking函数...
想法是和程序员的想法不一样的.至于为什么.大家去想一想.跟心理学有关的server|分页|函数|数据比来MSDNMagazine上的一篇文章10TipsforWritingHigh-PerformanceWebApplications提到了无效的数据分页手艺对进步ASP.NET程序功能的主要性;并给出了一个完成数据分页的storedprocedure的例子,抄写以下:CREATEPROCEDUREnorthwind_OrdersPaged
(
@PageIndexint,
@PageSizeint
)
AS
BEGIN
DECLARE@PageLowerBoundint
DECLARE@PageUpperBoundint
DECLARE@RowsToReturnint
--Firstsettherowcount
SET@RowsToReturn=@PageSize*(@PageIndex+1)
SETROWCOUNT@RowsToReturn
--Setthepagebounds
SET@PageLowerBound=@PageSize*@PageIndex
SET@PageUpperBound=@PageLowerBound+@PageSize+1
--Createatemptabletostoretheselectresults
CREATETABLE#PageIndex
(
IndexIdintIDENTITY(1,1)NOTNULL,
OrderIDint
)
--Insertintothetemptable
INSERTINTO#PageIndex(OrderID)
SELECT
OrderID
FROM
Orders
ORDERBY
OrderIDDESC
--Returntotalcount
SELECTCOUNT(OrderID)FROMOrders
--Returnpagedresults
SELECT
O.*
FROM
OrdersO,
#PageIndexPageIndex
WHERE
O.OrderID=PageIndex.OrderIDAND
PageIndex.IndexID>@PageLowerBoundAND
PageIndex.IndexID<@PageUpperBound
ORDERBY
PageIndex.IndexID
END
在SQLServer2000内里,因为没有一个无效的举行ranking操纵的办法,以是该例子先创立了一个有Identity字段的一时表,使用Identity字段的自增加特征,直接的为Orders表的每行按orderID逆序付与了一个行号,然后基于这个行号完成分页。
在SQLServer2000内里,因为体系供应了内建的ranking函数,为了给Orders表天生行号,我们不再必要使用Identity字段。
比方,使用SQLServer2000的ROW_NUMBER()函数,按orderID字段逆序分列,给Orders表天生行号的语句以下:
SELECTROW_NUMBER()OVER(ORDERBYorderedDESC)ASrownum,ordered
FROMOrders
ORDERBYrownumDESC
基于这些新的ranking函数,您能够跟便利的完成数据的分页操纵。
</p>优点:简单易学、开发速度快、有很多年“历史”,能找到非常多别人做好的程序来用、配合activeX功能强大,很多php做不到的asp+activeX能做到,例如银行安全控件 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 下载一个源代码,然后再下载一个VBScript帮助,在源代码中遇到不认识的函数或是其他什么程序,都可以查帮助进行解决,这样学习效率很高。 它可通过内置的组件实现更强大的功能,如使用A-DO可以轻松地访问数据库。 最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。 从事这个行业,那么你可以学ASP语言,简单快速上手,熟练dreamweav排版,写asp代码,熟练photoshop处理图片,打好基础就行了 那么,ASP.Net有哪些改进呢? 那么,ASP.Net有哪些改进呢?
页:
[1]