今天我们要和大家一起讨论的是MySQL 分页存储过程的实际操作流程与MySQL 分页存储的实际应用代码的描述,以下就是文章的主要内容描述。
以下的文章主要向大家描述的是MySQL 分页存储过程的实际操作流程,我们是以介绍其实际应用代码的方式来引出MySQL 分页存储过程的实际操作步骤,下面就是文章的主要内容的讲述,望你会有所收获。
DROP PROCEDURE IF EXISTS pr_pager;
- CREATEPROCEDUREpr_pager(
- INp_table_nameVARCHAR(1024),
- INp_fieldsVARCHAR(1024),
- INp_page_sizeINT,
- INp_page_nowINT,
- INp_order_stringVARCHAR(128),
- INp_where_stringVARCHAR(1024),
- OUTp_out_rowsINT
- )
- NOTDETERMINISTIC
- SQLSECURITYDEFINER
COMMENT '分页存储过程'
BEGIN
定义变量
- DECLAREm_begin_rowINTDEFAULT0;
- DECLAREm_limit_stringCHAR(64);
MySQL 分页存储过程中的构造语句
- SETm_begin_row=(p_page_now-1)*p_page_size;
- SETm_limit_string=CONCAT('LIMIT',m_begin_row,',',p_page_size);
- SET@COUNT_STRING=CONCAT('SELECTCOUNT(*)INTO@ROWS_TOTALFROM',p_table_name,'',p_where_string);
- SET@MAIN_STRING=CONCAT('SELECT',p_fields,'FROM',p_table_name,'',p_where_string,'',p_order_string,m_limit_string);
预处理
- PREPAREcount_stmtFROM@COUNT_STRING;
- EXECUTEcount_stmt;
- DEALLOCATEPREPAREcount_stmt;
- SETp_out_rows=@ROWS_TOTAL;
- PREPAREmain_stmtFROM@MAIN_STRING;
- EXECUTEmain_stmt;
- DEALLOCATEPREPAREmain_stmt;
- END
以上的相关内容就是对MySQL 分页存储过程的介绍,望你能有所收获。
【编辑推荐】
- 优化MySQL性能的“绝招”有哪些?
- MySQL被Oracle并购后的409个日日夜夜
- JDBC 连接MySQL数据库实战演示
- MySQL 事件调度器示例演示
- 实现MySQL数据库备份,很简单!
转载请说明出处
知优网 » MySQL 分页存储过程的实际操作流程与代码(mysql存储过程分页查询)
知优网 » MySQL 分页存储过程的实际操作流程与代码(mysql存储过程分页查询)