您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

如何通用存储过程来对MySQL分页查询进行操作

2025/10/24 3:12:03发布24次查看
以下的文章主要描述的是通用存储过程来对mysql分页查询进行正确的操作,你如果对mysql分页查询进行正确的操作有兴趣的话你就可以点击以下的文章进行观看了。望你浏览之后能有所收获。 前段时间没有给出sqlserver转到mysql(和php搭配之最佳组合)的通用存储过
以下的文章主要描述的是通用存储过程来对mysql分页查询进行正确的操作,你如果对mysql分页查询进行正确的操作有兴趣的话你就可以点击以下的文章进行观看了。望你浏览之后能有所收获。
前段时间没有给出sqlserver转到mysql(和php搭配之最佳组合)的通用存储过程,本着共享的精神,为大家奉献这段mysql分页查询通用存储过程,假设所用数据库为guestbook:
use guestbook;  delimiter $$  drop procedure if exists prc_page_result $$  create procedure prc_page_result (  in currpage int,  in columns varchar(500),  in tablename varchar(500),  in scondition varchar(500),  in order_field varchar(100),  in asc_field int,  in prima(最完善的虚拟主机管理系统)ry_field varchar(100),  in pagesize int  )  begin  declare stemp varchar(1000);  declare ssql varchar(4000);  declare sorder varchar(1000);   if asc_field = 1 then  set sorder = concat(' order by ', order_field, ' desc ');  set stemp = ';  else  set sorder = concat(' order by ', order_field, ' asc ');  set stemp = '>(select max';  end if;   if currpage = 1 then  if scondition > '' then  set ssql = concat('select ', columns, ' from ', tablename, ' where ');  set ssql = concat(ssql, scondition, sorder, ' limit ?');  else  set ssql = concat('select ', columns, ' from ', tablename, sorder, ' limit ?');  end if;  else  if scondition > '' then  set ssql = concat('select ', columns, ' from ', tablename);  set ssql = concat(ssql, ' where ', scondition, ' and ', prima(最完善的虚拟主机管理系统)ry_field, stemp);  set ssql = concat(ssql, '(', prima(最完善的虚拟主机管理系统)ry_field, ')', ' from (select ');  set ssql = concat(ssql, ' ', prima(最完善的虚拟主机管理系统)ry_field, ' from ', tablename, sorder);  set ssql = concat(ssql, ' limit ', (currpage-1)*pagesize, ') as tabtemp)', sorder);  set ssql = concat(ssql, ' limit ?');  else  set ssql = concat('select ', columns, ' from ', tablename);  set ssql = concat(ssql, ' where ', prima(最完善的虚拟主机管理系统)ry_field, stemp);  set ssql = concat(ssql, '(', prima(最完善的虚拟主机管理系统)ry_field, ')', ' from (select ');  set ssql = concat(ssql, ' ', prima(最完善的虚拟主机管理系统)ry_field, ' from ', tablename, sorder);  set ssql = concat(ssql, ' limit ', (currpage-1)*pagesize, ') as tabtemp)', sorder);  set ssql = concat(ssql, ' limit ?');  end if;  end if;  set @ipagesize = pagesize;  set @squery = ssql;  prepare stmt from @squery;  execute stmt using @ipagesize;  end;  $$  delimiter; 
可以存储为数据库脚本,然后用命令导入:
mysql(和php搭配之最佳组合) -u root -p
调用:
call prc_page_result(1, *, tablename, , columnname, 1, pkid, 25); 
以上的相关内容就是对mysql分页查询通用存储过程的介绍,望你能有所收获。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product