|
自己编写的一个 存储过程分页。
调用的时候 传人 表名 排序 页码参数 和查询条件 即可- set ANSI_NULLS ON
- set QUOTED_IDENTIFIER ON
- go
- ALTER PROCEDURE [dbo].[GetRecordFromPage]
- @tblName varchar(255), -- 表名
- @fldName varchar(255), -- 排序语句
- @PageSize int = 10, -- 页尺寸
- @PageIndex int = 1, -- 页码
- @strWhere varchar(2000) = '' -- 查询条件 (注意: 不要加 where)
- AS
- declare @strSQL varchar(6000) -- 主语句
- declare @strTmp varchar(1000) -- 临时变量
- declare @strOrder varchar(500) -- 排序类型
-
- set @strSQL='select *
- from (
- select row_number()over(order by tempColumn)tempRowNumber,*
- from (select top '+str(@PageSize*@PageIndex)+' tempColumn=0,* from '+@tblName+'
- where '+@strWhere+'
- '+@fldName+'
- )t
- )tt
- where tempRowNumber>'+str((@PageIndex-1)*@PageSize)+' '
- print @strSQL --输出sql语句
- exec (@strSQL)
复制代码 |
|