mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列
parameterType: 参数类型, 可以省略
mysql支持自增主键,自增主键的获取, mybatis也是利用statement.getGenreatedKeys();
useGeneratedKeys=”true”;使用自增主键获取主键值策略
keyProperty;指定对应的主键属性,也就是mybatis获取到主键值以后,将这个值封装给javaBean的哪个属性
Oracle不支持自增;Oracle使用序列来模拟自增;
每次插入的数据的主键是从序列中拿到的值;如何获取到这个
<insert id="addEmp" databaseId="oracle"><!-- keyProperty:查出的主键值封装给javaBean的哪个属性order="BEFORE":当前sql在插入sql之前运行AFTER:当前sql在插入sql之后运行resultType:查出的数据的返回值类型BEFORE运行顺序:先运行selectKey查询id的sql;查出id值封装给javaBean的id属性在运行插入的sql;就可以取出id属性对应的值AFTER运行顺序:先运行插入的sql(从序列中取出新值作为id);再运行selectKey查询id的sql;--><selectKey keyProperty="id" order="BEFORE" resultType="Integer"><!-- 编写查询主键的sql语句 --><!-- BEFORE-->select EMPLOYEES_SEQ.nextval from dual <!-- AFTER:select EMPLOYEES_SEQ.currval from dual --></selectKey><!-- 插入时的主键是从序列中拿到的 --><!-- BEFORE:-->insert into employees(EMPLOYEE_ID,LAST_NAME,EMAIL) values(#{id},#{lastName},#{email<!-- ,jdbcType=NULL -->}) <!-- AFTER:insert into employees(EMPLOYEE_ID,LAST_NAME,EMAIL) values(employees_seq.nextval,#{lastName},#{email}) --></insert>
mybatis使用statement.getGenreatedKeys(); useGeneratedKeys=”true”;使用自增主键获取主键值策略和Oracle不支持自增,Oracle使用序列相关推荐
- mybatis中useGeneratedKeys用法--插入数据库后获取主键值
前言:今天无意在mapper文件中看到useGeneratedKeys这个词,好奇就查了下,发现能解决我之前插入有外键表数据时,这个外键获取繁琐的问题,于是学习敲DEMO记录 在项目中经常需要获 ...
- mybatis mysql usegeneratedkeys_mybatis中useGeneratedKeys用法--插入数据库后获取主键值
前言:今天无意在mapper文件中看到useGeneratedKeys这个词,好奇就查了下,发现能解决我之前插入有外键表数据时,这个外键获取繁琐的问题,于是学习敲DEMO记录 在项目中经常需要获取到插 ...
- keyProperty=“id“ 和useGeneratedKeys=“true“作用
keyProperty="id" 和useGeneratedKeys="true"作用 使用 mysql 自增长序列,新插入一条数据时,怎么得到主键? 加入以下 ...
- useGeneratedKeys=true 配合 keyProperty=userId 作用
useGeneratedKeys="true" keyProperty="userId" 目的是将一个对象保存成功后,将插入的这条主键id返回,并保存到对象中 ...
- Mybatis源码阅读(三):结果集映射3.3 —— 主键生成策略
*************************************优雅的分割线 ********************************** 分享一波:程序员赚外快-必看的巅峰干货 如 ...
- Mybatis插入数据后获取主键的值
Mybatis插入数据后获取主键的值 1. 所使用的数据库是支持自增的,且主键是自增的 <!-- 支持自增的数据库且主键是自增的:自动将插入后自增id的值赋值给传入的Employee的id--& ...
- mybatis多表新增如何获取主键ID
记录一下碰到的问题,就当做是笔记吧,防止忘记.在做ssm多表新增的时候,碰到了一个小问题,就是在新增成功一个表的时候我要获取它的ID,然后用它的ID新增下一个表. 但是,我要怎么做呢?新增成功,再查询 ...
- Mybatis 插入时获取主键的方式
mybatis 作为一个主流的 ORM 框架,深受广大开发者的喜爱.有人的地方就有江湖,有代码的地方自然有坑,下面来说说获取 mybatis 的插入后返回的主键. 我们可以想一下自动增长的主键特性,在 ...
- mybatis insert获取主键
今天要求获取刚刚插入的数据的自增主键: <insert id="insertSelective" parameterType="cn.zgjkw.com.domai ...
最新文章
- python 目录遍历 目录文件列表 介绍
- Ubuntu下 MySQL安装
- 第2讲 | 网络分层的真实含义是什么?
- 泛微协同“风暴”席卷高端市场
- CodeForces - 1368F Lamps on a Circle(交互+贪心)
- win服务器创建文件夹命令,Win10系统如利用命令提示符或WSL创建任意大小空白文件...
- 【资料】机器学习笔记的github镜像下载(github个人star数量排名175)
- 苏宁官宣史上力度最大818:比京东便宜10%
- android p wifi一直在扫描_Android Wifi 扫描及自动连接
- 疫情下的创业品牌如何逆风翻盘?
- EAN-13码知识及其校验码的计算方法
- 2022蓝牙耳机哪款更值得买?最受欢迎的十大蓝牙耳机排行榜
- linux搭建dlna媒体服务器,Serviio:一款功能强大的DLNA媒体服务器软件
- python语言的多行注释以什么开头和结尾_python多行注释
- win7无法连接打印机拒绝访问_打印机拒绝访问,小编教你打印机拒绝访问无法连接怎么解决...
- CSS位置偏移反爬虫绕过
- 为什么股票一买就跌,一卖就涨?终于找到答案了!
- 万豪集团发布《重塑餐饮业:行业洞察》报告,分享十大新兴趋势
- uni-app 全局变量的实现
- rar和zip格式的压缩与解压