日期:2014-05-20 浏览次数:21281 次
create proc proc_pagination   --创建分页存储过程   
 @page int = 1,                  -- 页数   
 @pagesize int = 10,             -- 每页的大小   
 @tableName varchar(100),        -- 要查询的表名   
 @orderFields varchar(255),      -- 排序的字段名(一定要)   
 @GetFields varchar(1000) = '*', -- 需要返回的列   
 @sqlWhere  varchar(1500) = '',  -- 查询条件(注意: 不要加where,但要加and)   
 @OrderType varchar(4) = 'desc', -- 设置排序类型   
 @totalrow int output,    --查询出多少条数据(输出参数)   
 @totalpage int output    --总有多少页(输出参数)   
as  
declare @sql varchar(2000),@sumRowSql nvarchar(2000),@ParmDefinition nvarchar(200);   
  
set @sumRowSql = N'select @totalRow = count(1) from ' + @tableName + ' where 1 = 1 '+@sqlWhere;  --查询的SQL语句   
set @ParmDefinition = N'@totalRow int output';   --定义查询SQL语句的参数类型