分页的存储过程实例

Posted minikiss苗苗

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分页的存储过程实例相关的知识,希望对你有一定的参考价值。

delimiter $$

create procedure pro_student(in curPage int,in pageSize int ,out tolPage int,out tolNum int)

begin

-- 声明一个显示该条数的变量

declare total int default 0;

-- 从t_student中获得总条数,并赋值给tolNum

select count(*) into tolNum from t_student;

-- 根据总条数和每页的条数获得总页数

set tolPage:=ceil(tolNum/pageSize);

-- 利用当前页数和每页的条数获得显示的条数的值

set toltal:=(curPage-1)*pageSize;

-- 最后利用limit查找学生,查找到的学生集合就是想要的了

select * from t_student limit toltal,pageSize;

end $$

-- 对于存储过程中的输出参数需要利用用户变量获得

set @tolPage,@tolNum;

-- 调用存储过程

call pro_student(1,3,@tolPage,@tolNum);

-- 显示总页数和总条数

select @tolPage,@tolNum;

以上是关于分页的存储过程实例的主要内容,如果未能解决你的问题,请参考以下文章

使用Oracle的rownum或者存储过程分页的详细例子(jsp)~新手

分页的存储过程

存储过程里分页的例子

SQL Server分页的存储过程写法以及性能比较

Oracle 分页存储过程

SQLServer分页查询存储过程