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;
原文:http://www.cnblogs.com/zh520mm/p/7143654.html