DROP PROCEDURE IF EXISTS UP_SplitPages;
CREATE PROCEDURE UP_SplitPages(
nCurrPage int,/*当前页*/
nFieldName varchar(1000),/*显示字段*/
nTablename varchar(100),/*表名*/
nWhereStr varchar(1000),/*查询条件*/
nOrderStr varchar(1000),/*排序条件*/
nPageSize int/*每页条数*/
)
BEGIN
DECLARE sBeginRow INT DEFAULT 0;/*行数*/
DECLARE sLimit varchar(1000);
IF nCurrPage<1 THEN
set sBeginRow = 0;
ELSE
set sBeginRow = (nCurrPage-1)*nPageSize;
END IF;
set sLimit = CONCAT(' LIMIT ',sBeginRow,', ',nPageSize);/*limit串 */
IF (nWhereStr is null OR nWhereStr='') THEN
SET @sWhereStr = '' ;
ELSE
SET @sWhereStr =CONCAT(' WHERE ',nWhereStr);
END IF;
IF (nOrderStr is null OR nOrderStr='') THEN
SET @sOrderStr = '' ;
ELSE
SET @sOrderStr =concat(' ORDER BY ',nOrderStr);
END IF;
SET @sql_data = CONCAT('SELECT ',nFieldName,' FROM ',nTablename,@sWhereStr,@sOrderStr,sLimit);
/*SET @sql_count=CONCAT('SELECT COUNT(*) FROM ',nTablename,@sWhereStr);
PREPARE stmtCount FROM @sql_count;
EXECUTE stmtCount;
DEALLOCATE PREPARE stmtCount;*/
PREPARE stmtData FROM @sql_data;
EXECUTE stmtData;
DEALLOCATE PREPARE stmtData;
END;
调用:call UP_SplitPages (2,'RID,GroupID,GroupName,GroupType,Description','Group','1=1 and GroupType<10','group.GroupID','RID',4)
调用:call UP_SplitPages (2,'RID,GroupID,GroupName,GroupType,Description','Group','1=1 and GroupType<10','Group.GroupID','RID',4)
如果存储过程返回有两个结果集,php中不知道如何获取,我没试成功,哪位有好的方式能处理,请留言
分享到:
相关推荐
MySql 分页 存储过程 MySql 分页 存储过程 MySql 分页 存储过程
mysql存储过程实现分页 mysql存储过程实现分页 mysql存储过程实现分页 mysql存储过程实现分页
Mysql分页通用存储过程
针对mysql分页的一个存储过程,可以动态传入表名,可带查询条件,可带排序列
MYSQL分页存储过程 非常实用的东西哦 希望大家能用上
mysql分页存储过程mysql分页存储过程mysql分页存储过程mysql分页存储过程
近期项目中用到的分页存储过程,希望对大家有帮助。
通过SQL 查询分析器,显示比较:我的结论是: ...分页方案三:(利用SQL的游标存储过程分页) 效率最差,但是最为通用 SELECT u.username FROM `user` u join contact_info c on (u.id=c.user_id) and c.address='123';
通用Mysql分页存储过程,支持多表查询。
本人亲自试验 mysql存储分页 mysql存储过程分页 mysql数据分页 limit数据分页 mysql的limit
NULL 博文链接:https://zhaoshijie.iteye.com/blog/1270970
更改语句结束符号 delimiter$$ 查看存储过程结构 show create procedure proc_name
非常好用的mysql存储过程,支持大并发,很稳定,绝对原创,你值得拥有!
MySQL存储过程编写总结文档,包括循环结构样式,创建临时表,删除数据,MySQL分页,动态存储过程编写
本程序实现jsp的分页功能,结合servlet动态显示数据库MySQL内已存储的信息
改造过的mysql版本的分页存储过程,严格测试,绝对好用.适合大型项目使用.
JAVA调用 MYSQL存储过程 JSP实现分页
所以,可以试着让mysql也存储分页,当然要程序配合。(这里只是提出一个设想,欢迎大家一起讨论) ASP的分页:在ASP系统中有Recordset对象来实现分页,但是大量数据放在内存中,而且不知道什么时候才失效(请ASP高手...
使用存储过程进行分页,适合多表 使用存储过程进行分页,适合多表
这是我自己学习mysql时的学习笔记,每一个知识点都是自己动手写的,涵盖了mysql中的几乎全部的基础知识点,查询,子查询,分组,排序,常用函数,多表连接,视图,变量,存储过程,函数,分支结构,循环结构等等