亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

mysql的存儲過程、游標 、事務實例詳解

2024-07-24 13:14:09
字體:
來源:轉載
供稿:網友

mysql的存儲過程、游標 、事務實例詳解

下面是自己曾經編寫過的mysql數據庫存儲過程,留作存檔,以后用到的時候拿來參考。

其中,涉及到了存儲過程、游標(雙層循環)、事務。

【說明】:代碼中的注釋只針對當時業務而言,無須理會。

代碼如下:

DELIMITER $$DROP PROCEDURE IF EXISTS `transferEmailTempData`$$CREATE PROCEDURE transferEmailTempData(IN jobId VARCHAR(24))BEGIN  DECLARE idval VARCHAR(24) DEFAULT '';  DECLARE taskIdval VARCHAR(24) DEFAULT '';  DECLARE groupIdval VARCHAR(24) DEFAULT '';  DECLARE emailval VARCHAR(50) DEFAULT '';    /*標識正式表是否存在一條相同數據,即:groupId、email相同*/  DECLARE infoId VARCHAR(24) DEFAULT '';    /*標識事務錯誤*/  DECLARE err INT DEFAULT 0;    /*達到一定數量就進行提交,計數器*/  DECLARE counts INT DEFAULT 0;    /*標識是否回滾過*/  DECLARE isrollback INT DEFAULT 0;    /*游標遍歷時,作為判斷是否遍歷完全部記錄的標記*/  DECLARE done INTEGER DEFAULT 0;    /*獲取臨時表該任務的數據*/  DECLARE cur CURSOR FOR SELECT id,taskId,groupId,email FROM `t_email_data_temp` WHERE taskId=jobId;    /*根據群組id、email查詢是否存在相同記錄*/  DECLARE cur2 CURSOR FOR SELECT id FROM `t_email_info` e WHERE e.`group_id` = groupIdval AND e.`email_address` = emailval;     /* 出現錯誤,設置為1,只要發生異常就回滾*/  DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET err=1;    /*聲明當游標遍歷完全部記錄后將標志變量置成某個值*/  DECLARE CONTINUE HANDLER FOR NOT FOUND  SET done=1;    /*開啟事務*/  START TRANSACTION;    /*打開游標*/  OPEN cur;    /*使用LOOP循環遍歷*/  out_loop:LOOP      /*將每一條結果對應的字段值賦值給變量*/    FETCH cur INTO idval,taskIdval,groupIdval,emailval;    IF done = 1 THEN      LEAVE out_loop;    END IF;        /*打開第二個游標*/    OPEN cur2;      SET done = 0;      FETCH cur2 INTO infoId;            /*如果正式表不存在相同groupId and email記錄,添加到正式表*/      IF done = 1 THEN              /*插入正式表*/        INSERT INTO `t_email_info` VALUES(idval,emailval,groupIdval,0,'',NOW(),'admin',NOW(),'admin');                /*刪除臨時數據*/        DELETE FROM `t_email_data_temp` WHERE id = idval;                /*計數器,每1000條才提交*/        SET counts = counts + 1;                /*發生異常,回滾*/        IF err=1 THEN          SET isrollback=1;          ROLLBACK;        ELSE          IF counts = 1000 THEN            COMMIT;            /*達到1000條提交后,重置計數器*/            SET counts=0;          END IF;        END IF;      ELSE        /*已經存在相同記錄,則刪除該記錄*/        IF done=0 THEN          DELETE FROM `t_email_data_temp` WHERE id = idval;        END IF;      END IF;      FETCH cur2 INTO infoId;    CLOSE cur2;        /*控制外部的循環,該步驟不能缺少,否則只循環一次就結束了*/    SET done=0;      END LOOP out_loop;  CLOSE cur;    /*如果沒有發生過回滾事件,則更新task狀態*/  /*如果回滾過,不更新task狀態,下次執行任務的時候,會再次將剩余沒有提交的數據進行添加到正式表*/  IF isrollback=0 THEN    UPDATE `t_email_task` t SET t.`if_finish` = 1 WHERE t.`id`=jobId;  END IF;    END$$DELIMITER ;

以上就是mysql的存儲過程、游標 、事務的講解,如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品精品电影网| 久久精品人人做人人爽| 亚洲免费一在线| 久久国产精品久久精品| 亚洲美女又黄又爽在线观看| 精品国产精品自拍| 2019中文字幕在线| 国产精品色视频| 91精品国产综合久久久久久久久| 欧美精品久久久久久久久久| 久久亚洲春色中文字幕| 色噜噜狠狠狠综合曰曰曰88av| x99av成人免费| 一本大道亚洲视频| 国产精品99久久久久久久久| 欧美主播福利视频| 疯狂欧美牲乱大交777| 国产狼人综合免费视频| 欧美激情视频三区| 久久久久日韩精品久久久男男| 欧美日韩另类视频| 欧美成人免费全部| 国产精品一区二区久久久久| 国产美女扒开尿口久久久| 岛国视频午夜一区免费在线观看| 日本高清不卡在线| 色一情一乱一区二区| 久久精品国产久精国产一老狼| 日韩av在线一区二区| 97欧美精品一区二区三区| 亚洲无av在线中文字幕| 国产精品福利在线观看网址| 欧美一级大胆视频| 欧美日韩精品国产| 欧美另类在线观看| 久久久精品网站| 国产精品久久99久久| 国产亚洲人成a一在线v站| 亚洲国产日韩欧美在线99| 国产日韩欧美在线视频观看| 国产精品福利久久久| 国产精品成人播放| 日韩亚洲精品电影| 亚洲精品www久久久| 91美女片黄在线观| 国精产品一区一区三区有限在线| 中文字幕精品久久久久| 91高潮在线观看| 成人激情视频小说免费下载| 在线观看免费高清视频97| 不卡av在线网站| 日韩一区二区在线视频| 亚洲小视频在线观看| 国产精品第1页| 日韩最新中文字幕电影免费看| 精品久久久久久久久久久久久| 自拍亚洲一区欧美另类| 成人在线中文字幕| 国产美女扒开尿口久久久| 亚洲一区二区三区久久| 日韩国产精品视频| 国产精品视频区| 91精品国产自产在线观看永久| 成人欧美在线观看| 91美女高潮出水| 在线色欧美三级视频| 精品久久中文字幕| 亚洲精品中文字幕有码专区| 亚洲天堂成人在线| 日韩成人在线网站| 国产一区二区黑人欧美xxxx| 精品成人在线视频| 92国产精品久久久久首页| 亚洲国产成人爱av在线播放| 欧美日韩亚洲国产一区| 亚洲性线免费观看视频成熟| 欧美国产日本高清在线| 欧美性视频在线| 国产在线拍揄自揄视频不卡99| 日韩中文在线中文网在线观看| 亚洲一区二区中文| 亚洲欧洲在线看| 中文字幕国产日韩| 日韩福利在线播放| 欧美精品福利在线| 久久久久久18| 久久精品国产精品| 精品日韩中文字幕| 日韩不卡在线观看| 久久久精品日本| 亚洲а∨天堂久久精品9966| 国产精品999| 亚洲裸体xxxx| 国产美女精品视频| 久久精品在线播放| 欧美精品videos性欧美| 成人激情视频网| 亚洲自拍小视频免费观看| 久久激情五月丁香伊人| 国产亚洲精品久久久久久| 日韩精品极品视频免费观看| 激情亚洲一区二区三区四区| 日韩精品在线免费| 欧美亚洲在线观看| 成人网址在线观看| 动漫精品一区二区| 亚洲综合在线做性| 亚洲影视中文字幕| 日韩高清电影免费观看完整| 91精品视频观看| 日韩美女福利视频| 色yeye香蕉凹凸一区二区av| 九九热最新视频//这里只有精品| 欧美在线视频观看| 91久久久久久久一区二区| 欧美极品少妇xxxxⅹ免费视频| 午夜精品一区二区三区在线视频| 91久久精品久久国产性色也91| 国产mv久久久| 8050国产精品久久久久久| 最近2019中文免费高清视频观看www99| 欧美激情2020午夜免费观看| 亚洲欧洲日产国码av系列天堂| 亚洲精品国产美女| 国产精品久久久久久中文字| 揄拍成人国产精品视频| 亚洲精品国产品国语在线| 亚洲图片制服诱惑| 亚洲影视九九影院在线观看| 国产精品亚洲自拍| 国产精品爽爽爽爽爽爽在线观看| 亚洲欧美日韩精品久久奇米色影视| 中文字幕在线视频日韩| 欧美性猛交xxx| 亚洲精品国产电影| 日韩一区二区av| 亚洲国产精品悠悠久久琪琪| 奇门遁甲1982国语版免费观看高清| 亚洲人成电影在线观看天堂色| 日韩成人网免费视频| 色av中文字幕一区| 亚洲精品一区二区三区婷婷月| 日韩av第一页| 久久久之久亚州精品露出| 久久在线精品视频| 伊人亚洲福利一区二区三区| 国产视频欧美视频| 亚洲新中文字幕| 国产伦精品一区二区三区精品视频| 日韩欧美国产一区二区| 亚洲国产99精品国自产| 国产91九色视频| 欧洲精品毛片网站| 国产91精品网站| 欧美最近摘花xxxx摘花| 欧美怡春院一区二区三区| 欧美床上激情在线观看| 91色p视频在线| 91亚洲精品一区二区| 国产一区深夜福利| www国产91| 亚洲a区在线视频| 91久久久在线| 国产午夜精品美女视频明星a级|