分页存储过程

记录一下自己以前用过的一些 工具存储过程,几乎写个页面就得用到的东西嘿!一个分页查询的存储过程 sqlServer的,如果以后有别的数据库了,再回来修改!

SqlServer  分页存储过程:

CREATE PROC [dbo].[GlobalPage]
(
@tab nvarchar(max),---表名
@strFld nvarchar(max), --字段字符串
@strWhere varchar(max), --where条件 
@PageIndex int, --页码
@PageSize int, --每页容纳的记录数
@Sort VARCHAR(255), --排序字段及规则,不用加order by
@Count INT OUTPUT  --返回记录总条数
)

AS
declare @strSql nvarchar(max)
declare @Exec_sql nvarchar(max)

set nocount on;

    /* 查询总记录数*/
    SET @Exec_sql='Set @Count=(SELECT COUNT(0) FROM ' + @tab + ' WHERE ' + @strWhere+' )'
    EXEC sp_executesql @Exec_sql,N'@Count int output',@Count output


  set @strSql=' SELECT * FROM (SELECT ROW_NUMBER() 
  OVER(ORDER BY ' + @Sort + ') AS rownum, ' + @strFld + ' FROM ' + @tab + ' where ' + @strWhere + ') AS Dwhere
  WHERE rownum BETWEEN ' + CAST(((@PageIndex-1)*@PageSize + 1) as nvarchar(20)) + ' and ' + cast((@PageIndex*@PageSize) as nvarchar(20))


exec (@strSql)

set nocount off;

 

mySql 分页存储过程:(不过目前还没有用过先预留,凑字数,要不不让发布)   

分页存储过程:(不过目前还没有用过先预留,凑字数,要不不让发布)   

       

posted on 2017-12-28 15:52  念你千万遍℃  阅读(172)  评论(0编辑  收藏  举报

导航