电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

MySQL存儲過程例子(包含事務(wù)、參數(shù)、嵌套調(diào)用、游標循環(huán)等)

瀏覽:4日期:2023-11-30 19:45:49

view plaincopy to clipboardprint?drop procedure if exists pro_rep_shadow_rs;delimiter |------------------------------------ rep_shadow_rs-- 用來處理信息的增加,更新和刪除-- 每次只更新上次以來沒有做過的數(shù)據(jù)-- 根據(jù)不同的標志位-- 需要一個輸出的參數(shù),-- 如果返回為0,則調(diào)用失敗,事務(wù)回滾-- 如果返回為1,調(diào)用成功,事務(wù)提交---- 測試方法-- call pro_rep_shadow_rs(@rtn);-- select @rtn;----------------------------------create procedure pro_rep_shadow_rs(out rtn int)begin;-- 聲明變量,所有的聲明必須在非聲明的語句前面;declare iLast_rep_sync_id int default -1;;declare iMax_rep_sync_id int default -1;;-- 如果出現(xiàn)異常,或自動處理并rollback,但不再通知調(diào)用方了;-- 如果希望應(yīng)用獲得異常,需要將下面這一句,以及啟動事務(wù)和提交事務(wù)的語句全部去掉;declare exit handler for sqlexception rollback;;-- 查找上一次的;select eid into iLast_rep_sync_id from rep_de_proc_log where tbl='rep_shadow_rs';;-- 如果不存在,則增加一行;if iLast_rep_sync_id=-1 then;;;insert into rep_de_proc_log(rid,eid,tbl) values(0,0,'rep_shadow_rs');;;;set iLast_rep_sync_id = 0;;end if;;;;;;-- 下一個數(shù)字;set iLast_rep_sync_id=iLast_rep_sync_id+1;;-- 設(shè)置默認的返回值為0:失敗;set rtn=0;;;;;;-- 啟動事務(wù);start transaction;;-- 查找最大編號;select max(rep_sync_id) into iMax_rep_sync_id from rep_shadow_rs;;-- 有新數(shù)據(jù);if iMax_rep_sync_id>=iLast_rep_sync_id then;;;;;-- 調(diào)用;;;;;call pro_rep_shadow_rs_do(iLast_rep_sync_id,iMax_rep_sync_id);;;;;;-- 更新日志;;;;;update rep_de_proc_log set rid=iLast_rep_sync_id,eid=iMax_rep_sync_id where tbl='rep_shadow_rs';;end if;;;;;;-- 運行沒有異常,提交事務(wù);commit;;-- 設(shè)置返回值為1; ;set rtn=1;end;|delimiter ;drop procedure if exists pro_rep_shadow_rs_do;delimiter |----------------------------------- 處理指定編號范圍內(nèi)的數(shù)據(jù)-- 需要輸入2個參數(shù)-- last_rep_sync_id 是編號的最小值-- max_rep_sync_id 是編號的最大值-- 無返回值---------------------------------create procedure pro_rep_shadow_rs_do(last_rep_sync_id int, max_rep_sync_id int)begin;declare iRep_operationtype varchar(1);;declare iRep_status varchar(1);;declare iRep_Sync_id int;;declare iId int;;-- 這個用于處理游標到達最后一行的情況;declare stop int default 0;;-- 聲明游標;declare cur cursor for select id,Rep_operationtype,iRep_status,rep_sync_id from rep_shadow_rs where rep_sync_id between last_rep_sync_id and max_rep_sync_id;;-- 聲明游標的異常處理,設(shè)置一個終止標記;declare CONTINUE HANDLER FOR SQLSTATE '02000' SET stop=1;;;;;;-- 打開游標;open cur;;;;;;-- 讀取一行數(shù)據(jù)到變量;fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;;-- 這個就是判斷是否游標已經(jīng)到達了最后;while stop <> 1 do; ;;;;;-- 各種判斷;;;;;if iRep_operationtype='I' then;insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;;;;;;elseif iRep_operationtype='U' then;;;;;begin;if iRep_status='A' then;;;;;insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;;elseif iRep_status='B' then;;;;;delete from rs0811 where id=iId;;end if;;;;;;end;;;;;;elseif iRep_operationtype='D' then;delete from rs0811 where id=iId;;;;;;end if;;;;;;;-- 讀取下一行的數(shù)據(jù);;;;;;fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;;end while-- 循環(huán)結(jié)束;close cur; -- 關(guān)閉游標;end;|; ;

相關(guān)文章:
主站蜘蛛池模板: PCB厂|线路板厂|深圳线路板厂|软硬结合板厂|电路板生产厂家|线路板|深圳电路板厂家|铝基板厂家|深联电路-专业生产PCB研发制造 | 脉冲布袋除尘器_除尘布袋-泊头市净化除尘设备生产厂家 | 便携式谷丙转氨酶检测仪|华图生物科技百科 | 工业用品一站式采购平台|南创工品汇-官网|广州南创 | 挤出机_橡胶挤出机_塑料挤出机_胶片冷却机-河北伟源橡塑设备有限公司 | 富森高压水枪-柴油驱动-养殖场高压清洗机-山东龙腾环保科技有限公司 | 瓶盖扭矩测试仪-瓶盖扭力仪-全自动扭矩仪-济南三泉中石单品站 | 挖掘机挖斗和铲斗生产厂家选择徐州崛起机械制造有限公司 | 除甲醛公司-甲醛检测治理-杭州创绿家环保科技有限公司-室内空气净化十大品牌 | 咖啡加盟-咖啡店加盟-咖啡西餐厅加盟-塞纳左岸咖啡西餐厅官网 | 丽陂特官网_手机信号屏蔽器_Wifi信号干扰器厂家_学校考场工厂会议室屏蔽仪 | 贵州科比特-防雷公司厂家提供贵州防雷工程,防雷检测,防雷接地,防雷设备价格,防雷产品报价服务-贵州防雷检测公司 | 硫酸亚铁-聚合硫酸铁-除氟除磷剂-复合碳源-污水处理药剂厂家—长隆科技 | 便携式高压氧舱-微压氧舱-核生化洗消系统-公众洗消站-洗消帐篷-北京利盟救援 | 谈股票-今日股票行情走势分析-牛股推荐排行榜 | 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 大流量卧式砂磨机_强力分散机_双行星双动力混合机_同心双轴搅拌机-莱州市龙跃化工机械有限公司 | 北京银联移动POS机办理_收银POS机_智能pos机_刷卡机_收银系统_个人POS机-谷骐科技【官网】 | SRRC认证_电磁兼容_EMC测试整改_FCC认证_SDOC认证-深圳市环测威检测技术有限公司 | 无锡网站建设_小程序制作_网站设计公司_无锡网络公司_网站制作 | 阀门智能定位器_电液动执行器_气动执行机构-赫尔法流体技术(北京)有限公司 | 雄松华章(广州华章MBA)官网-专注MBA/MPA/MPAcc/MEM辅导培训 | 伟秀电气有限公司-10kv高低压开关柜-高低压配电柜-中置柜-充气柜-欧式箱变-高压真空断路器厂家 | 成都装修公司-成都装修设计公司推荐-成都朗煜装饰公司 | 布袋除尘器|除尘器设备|除尘布袋|除尘设备_诺和环保设备 | 固诺家居-全屋定制十大品牌_整体衣柜木门橱柜招商加盟 | 天津货架厂_穿梭车货架_重型仓储货架_阁楼货架定制-天津钢力仓储货架生产厂家_天津钢力智能仓储装备 | 棕刚玉-白刚玉厂家价格_巩义市东翔净水材料厂| 纯化水设备-纯水设备-超纯水设备-[大鹏水处理]纯水设备一站式服务商-东莞市大鹏水处理科技有限公司 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | 金属回收_废铜废铁回收_边角料回收_废不锈钢回收_废旧电缆线回收-广东益夫金属回收公司 | 免费分销系统 — 分销商城系统_分销小程序开发 -【微商来】 | TPE塑胶原料-PPA|杜邦pom工程塑料、PPSU|PCTG材料、PC/PBT价格-悦诚塑胶 | 微波萃取合成仪-电热消解器价格-北京安合美诚科学仪器有限公司 | 焊接烟尘净化器__焊烟除尘设备_打磨工作台_喷漆废气治理设备 -催化燃烧设备 _天津路博蓝天环保科技有限公司 | Brotu | 关注AI,Web3.0,VR/AR,GPT,元宇宙区块链数字产业 | 低浓度恒温恒湿称量系统,强光光照培养箱-上海三腾仪器有限公司 | DNA亲子鉴定_DNA基因检测中心官方预约平台-严选好基因网 | 储能预警-储能消防系统-电池舱自动灭火装置-四川千页科技股份有限公司官网 | 土壤肥料养分速测仪_测土配方施肥仪_土壤养分检测仪-杭州鸣辉科技有限公司 | 除尘布袋_液体过滤袋_针刺毡滤料-杭州辉龙过滤技术有限公司 |