Focus on WEB Application and Software Engineering
六月 16
MSSQL 2005已经出了一段时间了,第一次使用是今年1月份eREAD上线的时候,当时遇到的主要问题是SQL 2000导出数据到SQL 2005很麻烦,当时尝试很多方法,最后只有SQL数据库对导才能通过@_@
现在网上讨论MSSQL 2005和VS.NET 2005的很多,于是俺忍不住下载了这两个巨型的东西尝试下,呵呵
(测试环境是SQL Server 2005 Express Edition SP1 中文版
 + Microsoft SQL Server Management Studio Express,企业版的还没有装)

1、首先测试偶最有兴趣的ROW_NUMBER()分页函数
step 1 SQL里面建测试数据库并添加100条测试记录:

DECLARE @I INT
SET @I = 0
WHILE @I<100
BEGIN
    INSERT_INTO XZW_Chapter
        (Book_ID
        ,Vol_OrderNum
        ,Chp_Name
        ,Chp_Content
        ,Chp_LastUpdateTime
        ,Chp_isCheckUp
        ,Chp_isVIP
        ,isGB
        ,Chp_WordCount)
     VALUES
        (@i
        ,1314
        ,'第一章 总结'
        ,'从来没有救世主'
        ,getdate()
        ,1
        ,0
        ,1
        ,5166)
    SET @i = @i+1
END

step 2 SQL查询分析器执行分页读取:
SELECT_TOP 10 * 
    FROM
        (SELECT_*,ROW_NUMBER() OVER (ORDER BY Chp_ID) AS RowNo 
        FROM XZW_Chapter)
    AS Chapter
WHERE RowNo > 8*10

注意最后一句:
RowNo > {页码} * {行数}
这里页码是第八页,每页显示10条记录
看到测试结果了吗?比Access、MSSQL 2000的那些top分页方式简单多了吧?^_^

附录:
Sql Server 2005自定义分页
http://www.agilelabs.cn/blogs/woody/archive/2005/11/26/218.aspx

当前评分 2.4 , 共有 7 人参与

  • Currently 2.428571/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5

添加评论




看不清?点击图片看看
biuquote
Loading



关于我

kittow (天笑)
80年代生于“天府之国”四川
爱好:编程、篮球、数码、旅游
乘一叶兴趣小舟,漂泊于浩瀚IT海洋。。。
TITLE:MSE of UESTC & 软件设计师
Technical Capacity | Last Blog