首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

DataList分页存储过程的写法?解决办法

2011-12-31 
DataList分页存储过程的写法??我用Datalist手动分页,我存储过程如下:ALTERPROCEDUREdbo.getallNews@curren

DataList分页存储过程的写法??
我用Datalist手动分页,我存储过程如下:
     

  ALTER   PROCEDURE   dbo.getallNews


@currenpage   int,--当前页
@pagesize   int     --每页数量


AS
declare   @a   nvarchar(50)
declare   @b   nvarchar(50)
declare   @v_str   nvarchar(2000)
set   @a=convert(nvarchar,@pagesize)
set   @b=convert(nvarchar,@pagesize*(@currenpage-1))
set   @v_str= 'select   top   '+@a+ '   *   from   News   where   NewsID   not   in   (select   top   '+@b+ '     NewsID     from   News   order   by   NewsID)   order   by   NewsID   '
        set   @v_str= 'select   t.*   from   ( '+@v_str+ ')t   order   by   t.UploadDate   desc '
        EXECUTE   sp_executesql     @v_str
RETURN  

    这是先分页后排序?这样有个问题   ,   时间排序是根据页来排的,
我想先排序后分页   ,请问有没有好点的存储过程



[解决办法]
可以试试我写的这个分页存储过程代码工具,可以先排序再分页:
http://www.webdiyer.com/AspNetPager/utility/sqlspgen.aspx

热点排行