存储过程游标(存储过程的游标什么作用)
本文目录
存储过程的游标什么作用
①从表中检索出结果集,从中每次指向一条记录进行交互的机制。 ②关系数据库中的操作是在完整的行集合上执行的。 由SELECT 语句返回的行集合包括满足该语句的WHERE 子句所列条件的所有行。由该语句返回完整的行集合叫做结果集。 应用程序,尤其是互动和在线应用程序,把完整的结果集作为一个单元处理并不总是有效的。 这些应用程序需要一种机制来一次处理一行或连续的几行。而游标是对提供这一机制的结果集的扩展。
Mysql存储过程中游标的用法实例
本文实例讲述了Mysql存储过程中游标的用法。分享给大家供大家参考。具体如下:1.批量插入商户路由关联数据:DELIMITER$$USE`mmm_mac`$$DROPPROCEDUREIFEXISTS`批量插入商户路由关联数据`$$CREATEDEFINER=`root`@`%`PROCEDURE`批量插入商户路由关联数据`()BEGINDECLAREv_partner_noVARCHAR(32);DECLAREv_partner_idINT(11);DECLAREv_sc_pidINT(11);DECLAREv_mac_noVARCHAR(32);DECLAREv_mac_addrVARCHAR(32);DECLAREn_mac_noBIGINT;DECLAREn_mac_addrBIGINT;DECLAREn_mac_addr_strVARCHAR(32);DECLAREdoneINT;#取得商户数据DECLAREcur_partnerlistCURSORFORSELECTcomp_id,partner_no,sc_pidFROMmmm_partner.anl_partner;SETn_mac_no=100000000;SETn_mac_addr=1000000000;OPENcur_partnerlist;REPEATFETCHcur_partnerlistINTOv_partner_id,v_partner_no,v_sc_pid;SETv_mac_no=CONCAT(’MAC’,v_sc_pid,n_mac_no);SETn_mac_addr_str=CONCAT(SUBSTR(n_mac_addr,1,2),’:’,SUBSTR(n_mac_addr,3,2),’:’,SUBSTR(n_mac_addr,5,2),’:’,SUBSTR(n_mac_addr,7,2),’:’,SUBSTR(n_mac_addr,9,2));SETv_mac_addr=CONCAT(’CC:’,n_mac_addr_str);SETn_mac_no=n_mac_no+1;SETn_mac_addr=n_mac_addr+1;#向t_machine_sc_config表中插入商户关联路由的数据#insertintot_machine_sc_config(mac_no,partner_no,partner_id,sc_pid,mac_addr,comp_id,is_lock)values(’MAC2016000000001’,’44060430603381’,1,4403,’C8:87:18:AB:79:66’,1,1);INSERTINTOt_machine_sc_config(mac_no,partner_no,partner_id,sc_pid,mac_addr,comp_id,is_lock)VALUES(v_mac_no,v_partner_no,v_partner_id,v_sc_pid,v_mac_addr,1,1);UNTIL0ENDREPEAT;CLOSEcur_partnerlist;END$$DELIMITER;2.更新商户表:DELIMITER$$USE`mmm_partner`$$DROPPROCEDUREIFEXISTS`更新商户表`$$CREATEDEFINER=`root`@`%`PROCEDURE`更新商户表`()BEGINDECLAREv_partner_noVARCHAR(32);DECLAREvpartner_noVARCHAR(32);DECLAREv_partner_idVARCHAR(32);DECLAREnBIGINT;DECLAREpartnerid_listCURSORFORSELECTcomp_idFROM100msh_partner.anl_partnerWHERETRIM(partner_no)=’’;SETvpartner_no=’2015415parno’;SETn=10000000;OPENpartnerid_list;REPEATFETCHpartnerid_listINTOv_partner_id;SETv_partner_no=CONCAT(vpartner_no,n);SETn=n+1;UPDATEmmm_partner.anl_partnerSETpartner_no=v_partner_noWHEREcomp_id=v_partner_id;UNTIL0ENDREPEAT;CLOSEpartnerid_list;END$$DELIMITER;希望本文所述对大家的mysql数据库程序设计有所帮助。
存储过程跟游标之间有什么关联么
两者没有什么必然的联系游标一般不单独使用,可以在存储过程\函数等中使用,使用完后要关闭释放。存储过程可以是一个对象,存储起来,下次再调用。
更多文章:
三国kill下载官方网站(新三国杀怎么进 怎么下载注册“三国杀”)
2024年7月15日 00:10
dnf魔道怎么加点(DNF 魔道学者 怎么加点(自己的心得))
2023年6月23日 09:00
比较好的单机版桌球游戏,画面要好,实用,比较容易上手的?找realplayer出的一款单机台球游戏
2024年6月30日 23:16
竹马法律职业资格考试(新)是什么意思?竹马法考这个APP好用不
2023年11月9日 13:00