麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > MySQL > 正文

mybatis+mysql 使用存儲過程生成流水號的實現代碼

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

使用mysql/35147.html">存儲過程,在操作數據庫時開啟事務,避免并發時同時操作造成數據重復

mysql,mybatis,生成,存儲過程,存儲過程生成流水號,生成流水號

CREATE DEFINER=`root`@`localhost` PROCEDURE `GetSerialNo`(IN tsCode VARCHAR(50),OUT result VARCHAR(200) )BEGIN  DECLARE tsValue VARCHAR(50);  DECLARE tdToday VARCHAR(20);   DECLARE nowdate VARCHAR(20);   DECLARE tsQZ  VARCHAR(50);  DECLARE t_error INTEGER DEFAULT 0;  DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET t_error=1;  START TRANSACTION;   /* UPDATE sys_sno SET sValue=sValue WHERE sCode=tsCode; */  SELECT sValue INTO tsValue FROM sys_sno WHERE sCode=tsCode;   SELECT sQz INTO tsQZ FROM sys_sno WHERE sCode=tsCode ;  -- 因子表中沒有記錄,插入初始值    IF tsValue IS NULL THEN    SELECT CONCAT(DATE_FORMAT(NOW(),'%y%m'),'0001') INTO tsValue;    UPDATE sys_sno SET sValue=tsValue WHERE sCode=tsCode ;    SELECT CONCAT(tsQZ,tsValue) INTO result;   ELSE        SELECT SUBSTRING(tsValue,1,4) INTO tdToday;    SELECT CONVERT(DATE_FORMAT(NOW(),'%y%m'),SIGNED) INTO nowdate;   -- 判斷年月是否需要更新   IF tdToday = nowdate THEN     SET tsValue=CONVERT(tsValue,SIGNED) + 1;    ELSE     SELECT CONCAT(DATE_FORMAT(NOW(),'%y%m') ,'0001') INTO tsValue ;    END IF;    UPDATE sys_sno SET sValue =tsValue WHERE sCode=tsCode;    SELECT CONCAT(tsQZ,tsValue) INTO result;   END IF;   IF t_error =1 THEN   ROLLBACK;   SET result = 'Error';   ELSE   COMMIT;   END IF;   SELECT result ;  END;daoInteger getFaultNo(Map<String, String> parameterMap);

xml

<update id="getFaultNo" parameterMap="getFaultMap" statementType="CALLABLE">  CALL GetSerialNo(?,?) </update> <!--  parameterMap.put("tsCode", 0);  parameterMap.put("result", -1);  --> <parameterMap type="java.util.Map" id="getFaultMap">  <parameter property="tsCode" mode="IN" jdbcType="VARCHAR"/>  <parameter property="result" mode="OUT" jdbcType="VARCHAR"/> </parameterMap>

調用

Map<String, String> parameterMap = new HashMap<String, String>();  parameterMap.put("tsCode", "a");  parameterMap.put("result", "-1");  faultMapper.getFaultNo(parameterMap);  // insert 故障日志 (主表)  if (!parameterMap.get("result").equals("-1") &&     !parameterMap.get("result").equals("Error")) {   //成功  } else {   throw new RuntimeException();  }

總結

以上所述是小編給大家介紹的mybatis+mysql 使用存儲過程生成流水號的實現代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VeVb武林網網站的支持!


注:相關教程知識閱讀請移步到MYSQL教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 国产一精品一av一免费爽爽 | 国产一区二区久久精品 | 99激情 | 久久国产精品二国产精品中国洋人 | 日韩激情| 欧美性久久久 | 亚洲成人高清在线观看 | 久久网页 | 亚洲精中文字幕二区三区 | 久久久久国产成人精品亚洲午夜 | 依人九九宗合九九九 | 久久国产精品二国产精品中国洋人 | 亚洲精品久久久久久久久久 | 9797色 | 国产免费观看一区二区三区 | 欧产日产国产精品乱噜噜 | bt 自拍 另类 综合 欧美 | 国产成人午夜高潮毛片 | 欧美大荫蒂xxx | 国产精品久久久久久久久久尿 | 精品小视频 | 91成人免费 | 免费国产一级淫片 | 美女视频大全网站免费 | 91九色网址 | 在线播放免费播放av片 | 欧美日本一区二区 | 污污黄| 狠狠干夜夜操 | 久久777国产线看观看精品 | 精品一二三区视频 | 91网页视频入口在线观看 | 欧美日韩在线看片 | 久久人人av | 精品伊人| 免费a级毛片大学生免费观看 | 欧美电影在线观看 | 正在播放91视频 | 秋霞a级毛片在线看 | 精国品产一区二区三区有限公司 | 久久久久久免费 |