/*
数据库分页存储过程,支持倒序和升序
参数说明:
@tablename:为搜索表名
@tablefield:为表的字段,约定为表的主键,
@where:为搜索表名,要显示所有记录请设为"1=1"
@orderby:为搜索结果排序,如order by id desc
@fieldlist:为字段列表,如userid, username
@curpage:当前页码
@page_record:每页记录条数
@Sort:排序标识(如果是倒序排,参数值为desc,为升序,参数值为asc,跟orderby参数是对应的)
结果: 返回表tablename中满足条件where的第curpage页的page_record条记录,结果按orderby排序
*/
CREATE PROCEDURE proc_CommonPaging
@tablename varchar(100),
@tablefield varchar(20),
@where varchar(5000),
@orderby varchar(500),
@fieldlist varchar(1000),
@curpage int,
@page_record int,
@sort varchar(8)
AS
BEGIN
DECLARE @cmd varchar(8000)
DECLARE @uprecord int
DECLARE @Op varchar(2) -- 操作符
DECLARE @max_min varchar(4) -- 最大/最小计算
SET @op = '<'
SET @max_min = 'MIN'
IF @sort = 'asc'
BEGIN
SET @Op = '>'
SET @max_min = 'MAX'
END
SET @uprecord=@curpage * @page_record
IF @curpage = 0
SET @cmd = 'SELECT TOP '+cast(@page_record AS NVARCHAR)+' '+@fieldlist+' FROM '+@tablename+' WHERE '+@where+' '+@orderby
ELSE
SET @cmd = 'SELECT TOP '+cast(@page_record AS NVARCHAR)+' '+@fieldlist+' FROM '+@tablename+' WHERE '+@where+' AND '+@tablefield+'
'+@op+' (SELECT '+@max_min+'('+@tablefield+') FROM (SELECT TOP '+cast(@uprecord AS NVARCHAR)+' '+@tablefield+' FROM '+@tablename+' WHERE
'+@where+' '+@orderby+') AS TmpTbl ) AND '+@where+' '+@orderby
SET @cmd = @cmd + '; SELECT COUNT(*) FROM '+@tablename+' WHERE '+@where
EXEC(@cmd)
PRINT(@cmd)
END
GO
相关推荐
数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的 数据库分页 用存储过程实现的
一个 可以应用于所有网页开发的数据库 分页存储过程 只要将他该为你的数据库名 和 你的数据库字段就可以用了 不过我是用ASP页面进行调试的 里面有数据库 和ASP源码
提供数据库分页的存储过程,也是学习存储过程的一个简单示例.
代码如下:/* 数据库分页存储过程,支持倒序和升序 参数说明: @tablename:为搜索表名 @tablefield:为表的字段,约定为表的主键, @where:为搜索表名,要显示所有记录请设为”1=1″ @orderby:为搜索结果排序...
Oracle通用数据库存储过程代码--高效分页存储过程,只需简单的修改即可使用,方便易懂!
很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术,很好的通过存储过程实现分页的技术
TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储过程 游标 数据库 sql优化 存储过程分页 TSQL 存储...
sybase分页存储过程(代码),分页存储过程代码,实现sybase数据库分页查询。
自己利用分页存储过程实现GridView分页,可查询,排序,选择删除,批量删除,还有编辑。效率不错,App_Date下为数据库存储过程脚本,数据库为自带实例数据库NorthWind。
能实现SQL数据库分页存储过程以及存储过程的调用,对初学者有很好的借鉴性。
在sybase中实现分页技术的存储过程 procedures
Oracle数据库通用的分页存储过程,含存储过程源码,分页的小例子,供大家参考!
还是要一分好了,写的不容易!
数据库脚本生成数据库,详细注释,又分页存储过程
asp.net中数据库分页,存储过程查询,适用性强,适合各种数据库,只要传入表名及其他相关条件等就可以很轻松的实现分页查询,提高效率。
存储过程的理念、存储过程的基本语法、常用发放的实现及简易的存储分页
多表分页的存储过程 多表分页的存储过程【适合于各种数据库】
分页存储过程1 分页存储过程2 分页存储过程3
完整SQL分页存储过程通过此过程脚本呢实现任何数据库的分页数据显示技术