mybatis 事務下獲取insert資料的主鍵[id]的值
現在有一個需求:表A 表B的資料,需要在同一個事務中操作。表A bid儲存的是表B的id。
表A:id[主鍵] , name , bid[表B的主鍵]
表B:id[主鍵] , name
就是先insert 表B , 獲取主鍵後,將id賦值給bid , 然後表Ainsert。
驗證多種網上的修改方式後 , 發現只有一種可以實現這個功能:
修改 mybatis-config.xml 檔案
<!-- 對於批量更新操作快取SQL以提高效能 BATCH 改成 SIMPLE --> <setting name="defaultExecutorType" value="SIMPLE" />
將 BATCH 改成 SIMPLE 。 會不會影響其他地方暫時還不知道
相關推薦
mybatis 事務下獲取insert資料的主鍵[id]的值
現在有一個需求:表A 表B的資料,需要在同一個事務中操作。表A bid儲存的是表B的id。 表A:id[主鍵] , name , bid[表B的主鍵] 表B:id[主鍵] , name 就是先
mybatis mysql 插入物件返回資料主鍵id
RuleTypeMapper.xml 檔案原始碼 <insert id="insertRuleType" useGeneratedKeys="true" keyProperty="id" parameterType="com.haier.gsp.core.mo
mybatis+mysql insert新增資料後返回資料主鍵id
1.根據useGeneratedKeys獲取返回值,部分資料庫不支援 修改mybatis xml <insert id="insertUser" useGeneratedKeys="true"
mybatis查詢語句獲取自增主鍵
第一種方式: 主鍵回填useGeneratedKeys 代表採用JDBC的Statment物件的getGeneratedKeys方法返回主鍵keyProperty 代表將用哪個POJO的屬性去匹配這個主鍵 <!-- 插入記錄 --><insert id="insert" parameterT
mybatis insert 返回主鍵id
mybatis insert 返回主鍵id 一、如果是springMVC框架的話。 前提條件: 需要在ibatis Configuration中設定UseGeneratedKeys為true Configuration cfg = new org.apache.ibati
Java程式碼TkMyBatis通用Mapper中新增資料時同時獲取自增主鍵ID,與適用uuid 做主鍵時獲取 id
一 . MyBatis mapper.xml檔案中在xml 1. 加入 這句 :useGeneratedKeys="true" keyProperty="ID" keyProperty="資料庫中的主鍵欄位名對應的實體類欄位名" ;【填實體類欄位
PHP TP5 連線postgres資料庫,獲取新增資料主鍵值
TP5 文件中::說明:新增資料,如果要獲取新增資料的自增ID 1. 使用Model,可以使用下面的方式: $user = new User; $user->na
Mybatis學習筆記4 - 獲取自增主鍵的值
lose test out tsql 鍵值 prope name gen ioe 獲取自增主鍵的值:mysql支持自增主鍵,自增主鍵值的獲取,mybatis也是利用statement.getGenreatedKeys();useGeneratedKeys="true";使用
深入分析Mybatis 使用useGeneratedKeys獲取自增主鍵
摘要 我們經常使用useGenerateKeys來返回自增主鍵,避免多一次查詢。也會經常使用on duplicate key update,來進行insertOrUpdate,來避免先query 在insert/update。用起來很爽,但是經常踩坑,還不知為何。本篇就是深入分析獲取自增主鍵的原理。 問題 首
mybatis添加記錄時返回主鍵id
測試數據 image creat ger org 設計 efault 需要 generated 參考:https://www.cnblogs.com/nuccch/p/7687281.html 場景 有些時候我們在添加記錄成功後希望能直接獲取到該記錄的主鍵id值,而不需要
Mybatis+Mysql插入數據庫返回自增主鍵id值的三種方法
文章 param mysql int sta source nbsp 通用 映射 一、場景: 插入數據庫的值需要立即得到返回的主鍵id進行下一步程序操作 二、解決方法: 第一種:使用通用mapper的插入方法 Mapper.insertSelective(r
Navicat操作Oracle、JPA註解實現Oracle插入資料 主鍵ID自增
首先在Oracle表中實現ID自增,其次在JPA中實現。 Oracle資料庫不存在主鍵自增選項,現在想實現ID自增。 部落格連結:oracle 實現插入自增列 開啟Navicat,定位到自己建立的表。 一、 建立序列 其他-序列&
mybatis3.1-[topic-16-17]-對映檔案_增刪改查_insert_獲取自增主鍵的值
筆記要點出錯分析與總結 /**測試第16章的增,刪,改 的內容 * 錯誤1: <insert id="addEmp" parameterType="com.bean.Employee"> ,注意選取資料型別是parameterType,不是Map * 錯誤2: 按順序查詢全部
MyBatis+MySQL 返回插入記錄的主鍵ID
一、nginx基本配置 二、nginx日誌檔案配置 在nginx中conf中的nginx.conf有一段關於日誌檔案的配置 三、製作按時間切割日誌檔案的指令碼 1.製作切割日誌指令碼cutlog.sh 2.使用定時執行命令 (1)crontab -e 進入編輯 (2)輸
MyBatis+MySQL map返回插入的主鍵ID
Mapper.xml <!-- 插入一條資料 --> <insert id="insert" parameterType="java.util.Map" useGenerated
MySql獲取插入記錄自增主鍵ID值
現在這種場景偏多,獲取的方式也很多。像MyBatis和Hibernate都有方式去獲取該值。 現在簡單講講MyBatis是獲取插入記錄自增主鍵ID值的。 public class Stu { private int id; private S
Oracle 在函數或存儲過程中執行一條插入語句並返回主鍵ID值
num c# 如果 acl get col oracle style 建表語句 有時,我們需要往一張表插入一條記錄,同時返回主鍵ID值。 假定主鍵ID的值都是通過對應表的SEQUENCE來獲得,然後進行ID賦值 這裏有幾種情況需要註意: 1)如果建表語句含有主鍵ID的觸發器
mybatis的insert元素屬性詳解 及 在insert插入資料獲取主鍵id的值
很多時候,在向資料庫插入資料時,需要保留插入資料的id,以便進行後續的update操作或者將id存入其他表作為外來鍵。 但是,在預設情況下,insert操作返回的是一個int值,並且不是表示主鍵id,而是表示當前SQL語句影響的行數。。。 接下來,我們看看MyBatis如何在使用MySQL和Oracle做i
Mybatis 在 insert 之後想獲取自增的主鍵 id,但是總是返回1
代碼 true batis id屬性 說明 _id reg generated color 記錄一次傻逼的問題, 自己把自己蠢哭:Mybatis 在 insert 之後想獲取自增的主鍵 id,但是總是返回1 錯誤說明: 返回的1是影響的行數,並不是自增的主鍵id
Mybatis 在 insert 之後想獲取自增的主鍵 id
type rop ati property prope keys .get clas gist <insert id="add" useGeneratedKeys="true" keyColumn="id" keyProperty="id"