cryf
天修改原来代码中的DataGrid分页部分,顺便重新修搞了个存储过程(学习了csdn上的例子!)
 1/*
 2一个将数据分页的存储过程     
 3 */

 4 CREATE PROCEDURE Proc_Pagination
 5  @tb         varchar(50),             --表名
 6  @col        varchar(50),            --按该列来进行分页
 7  @coltype    int,                      -- @col 列的类型,0-数字类型,1-字符类型,2-日期时间类型
 8  @orderby    int,                      --排序,0-顺序,1-倒序
 9  @collist    varchar(800),          --要查询出的字段列表,*表示全部字段
10  @pagesize   int=10,               --每页记录数
11  @page       int=1,                   --指定页
12  @condition  varchar(800)        --查询条件
13AS
14
15DECLARE @sql nvarchar(4000)
16DECLARE @where1 varchar(800)
17DECLARE @where2 varchar(800)
18IF @condition is null or rtrim(@condition)=\'\'
19 BEGIN    --没有查询条件
20   SET @where1=\' WHERE \'
21   SET @where2=\'  \'
22 END
23ELSE
24 BEGIN    --有查询条件
25   SET @where1=\' WHERE (\'+@condition+\') AND \'  --本来有条件再加上此条件
26   SET @where2=\' WHERE (\'+@condition+\'\'          --原本没有条件而加上此条件
27 END
28
29IF @orderby=0  --排列顺序 0 顺序 1 倒序
30  SET @sql=\'SELECT TOP \'+CAST(@pagesize AS varchar)+\' \'+@collist+
31           \' FROM \'+@tb+@where1+@col+\'>(SELECT MAX(\'+@col+\'\'+
32           \' FROM (SELECT TOP \'+CAST(@pagesize*(@page-1AS varchar)+\' \'+
33           @col+\' FROM \'+@tb+@where2+\'ORDER BY \'+@col+\') t) ORDER BY \'+@col
34ELSE     
35  SET @sql=\'SELECT TOP \'+CAST(@pagesize AS varchar)+\' \'+@collist+
36           \' FROM \'+@tb+@where1+@col+\'<(SELECT MIN(\'+@col+\'\'+
37           \' FROM (SELECT TOP \'+CAST(@pagesize*(@page-1AS varchar)+\' \'+
38           @col+\' FROM \'+@tb+@where2+\'ORDER BY \'+@col+\' DESC) t) ORDER BY \'+
39           @col+\' DESC\'
40IF @page=1--第一页
41  SET @sql=\'SELECT TOP \'+CAST(@pagesize AS varchar)+\' \'+@collist+\' FROM \'+@tb+
42    @where2+\'ORDER BY \'+@col+CASE @orderby WHEN 0 THEN \'\' ELSE \' DESC\' END
43EXEC(@sql)
44GO

分类:

技术点:

相关文章:

  • 2021-09-03
  • 2021-09-03
  • 2021-12-14
  • 2021-11-04
  • 2021-12-04
  • 2021-10-30
  • 2021-09-03
猜你喜欢
  • 2021-12-04
  • 2021-09-19
  • 2021-12-26
  • 2022-01-06
  • 2021-11-02
  • 2021-12-14
相关资源
相似解决方案