<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      springboot~mybatis中使用selectKey獲取自增主鍵

      在mybatis中,我們在insert操作之后,可以獲取到自增主鍵的值,這個需要我們用到這個方法,在使用時有一個坑需要注意,一會兒會說到。

      • 假設我們有數據表id_offset,然后id是自增主鍵
      • 我們在插入數據后,希望得到這個新插入的主鍵的值
      • 我們不希望通過兩條語句實現,因為這樣在并發時會有問題

      數據結構

      DROP TABLE IF EXISTS `id_offset`;
      CREATE TABLE `lawfirm_id_offset`  (
        `id` bigint(20) NOT NULL AUTO_INCREMENT,
        `kgid` varchar(128) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
        PRIMARY KEY (`id`) USING BTREE
      );
      

      mybatis中的mapper文件

         <insert id="insertIdOffset" parameterType="IdOffset">
              <selectKey resultType="long" keyProperty ="id" order="AFTER">
                  SELECT LAST_INSERT_ID()
              </selectKey>
              INSERT INTO lawyer_id_offset (kgid) VALUES (#{kgid})
      
          </insert>
      

      java中調用它

      注意,這里有個坑,獲取自增主鍵,不是獲取mapper的返回值,而是從當前實體中獲取id,這點需要注意。

      	@GetMapping("insert")
      	public AjaxResult insert() {
      		IdOffset idOffset = new IdOffset();
      		idOffset.setKgid("ax01");
      		idOffsetMapper.inserIdOffset(idOffset );
      		return AjaxResult.success(idOffset.getId());
      	}
      

      解析后的SQL語句

      selectKey不起作用的原因

      在 MyBatis 中使用 <selectKey> 來獲取自增主鍵值時,有時可能會出現返回 1 的情況。這可能是因為在 MyBatis 的執行環境和命令行中執行 SQL 語句的方式有一些差異,導致了這種不同的結果。

      下面是一些可能導致此問題的原因和解決方法:

      1. 事務問題: MyBatis 默認是在事務中執行 SQL 語句的。如果你在 <insert> 中同時使用了 <selectKey>,確保你的事務配置正確,事務提交之后才能正確地獲取到自增主鍵值。

      2. 數據庫返回值處理問題: MyBatis 在執行 <insert> 語句后,會通過 JDBC 獲取數據庫的返回結果。如果數據庫的返回結果不符合預期,可能導致 MyBatis 返回 1。確保數據庫返回的結果和 MyBatis 預期的結果一致。

      3. 數據庫驅動問題: 不同的數據庫驅動可能在處理 <selectKey> 時存在不同的行為。確保使用了與你的數據庫兼容的驅動版本。

      4. 日志輸出: 啟用 MyBatis 的日志輸出,查看生成的 SQL 語句以及執行情況,以便進一步分析問題。

      5. 環境問題: 確保在 MyBatis 中配置了正確的數據庫連接信息,以及其他必要的配置項。

      如果你已經排除了上述可能的問題,但仍然無法解決,建議提供更多關于你的 MyBatis 配置、映射文件和代碼的詳細信息,以及在命令行上執行 SQL 語句的方式,這樣我才能更準確地幫助你排查問題。

      posted @ 2023-08-09 09:02  張占嶺  閱讀(535)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 不卡一区二区国产精品| 友谊县| 成人精品老熟妇一区二区| 日本一区二区三区黄色网| 狠狠色狠狠综合久久| 蜜芽久久人人超碰爱香蕉| 伊人色综合久久天天| 成人亚洲国产精品一区不卡 | 苍溪县| 亚洲伊人精品久视频国产| 少妇xxxxx性开放| 熟女性饥渴一区二区三区| 国产成人无码免费视频麻豆| 国产蜜臀在线一区二区三区| 精品国产熟女一区二区三区| 国产一区在线播放av| 97久久久亚洲综合久久| 国产成人不卡一区二区| 久久久久人妻一区精品色 | 日本一区午夜艳熟免费| 国产亚洲国产精品二区| 界首市| 久久天天躁狠狠躁夜夜躁2012| 亚洲人成网站18禁止无码| 中国少妇无码专区| 国内自拍第一区二区三区| 日韩高清亚洲日韩精品一区二区 | 久久久久四虎精品免费入口| 偷柏自拍亚洲综合在线| 平武县| 亚洲国产精品日韩专区av| 日韩中文字幕有码av| 日韩 高清 无码 人妻| 亚洲精品综合一区二区在线| 中文字幕亚洲人妻一区| 免费观看全黄做爰大片| 国产自产av一区二区三区性色 | 久久毛片少妇高潮| 夜鲁鲁鲁夜夜综合视频欧美| 色婷婷日日躁夜夜躁| 国内精品自线在拍|