【mybatis】插入操作更新id
前言
- mybatis
- mysql
插入操作更新id的方式
- 先生成id,后执行插入SQL
- 先执行插入SQL,后获取id
先生成id,后执行插入SQL
<insert id="insert" parameterType="xxx.entity.Opration" ><selectKey resultType="java.lang.String" keyProperty="id" order="BEFORE" >SELECT uuid() as id</selectKey>insert into opration (`id`, `appid`, `deviceid`, `day`, `duration`, `duration_max`, `slipTimes`, `signIn`, `error`, `create_time`)values (#{id,jdbcType=VARCHAR}, #{appid,jdbcType=INTEGER}, #{deviceid,jdbcType=INTEGER}, #{day,jdbcType=VARCHAR}, #{duration,jdbcType=INTEGER}, #{durationMax,jdbcType=INTEGER}, #{sliptimes,jdbcType=INTEGER}, #{signin,jdbcType=INTEGER}, #{error,jdbcType=INTEGER}, #{createTime,jdbcType=BIGINT})</insert>
先执行插入SQL,后获取id
<insert id="insert" parameterType="xxx.entity.Opration" useGeneratedKeys="true" keyProperty="id" keyColumn="id">insert into opration (`appid`, `deviceid`, `day`, `duration`, `duration_max`, `slipTimes`, `signIn`, `error`, `create_time`)values (#{appid,jdbcType=INTEGER}, #{deviceid,jdbcType=INTEGER}, #{day,jdbcType=VARCHAR}, #{duration,jdbcType=INTEGER}, #{durationMax,jdbcType=INTEGER}, #{sliptimes,jdbcType=INTEGER}, #{signin,jdbcType=INTEGER}, #{error,jdbcType=INTEGER}, #{createTime,jdbcType=BIGINT})</insert>
或者
<insert id="insert" parameterType="xxx.entity.Opration" ><selectKey resultType="java.lang.Integer" keyProperty="id" order="AFTER" >SELECT SCOPE_IDENTITY() as id</selectKey>insert into opration (`appid`, `deviceid`, `day`, `duration`, `duration_max`, `slipTimes`, `signIn`, `error`, `create_time`)values (#{appid,jdbcType=INTEGER}, #{deviceid,jdbcType=INTEGER}, #{day,jdbcType=VARCHAR}, #{duration,jdbcType=INTEGER}, #{durationMax,jdbcType=INTEGER}, #{sliptimes,jdbcType=INTEGER}, #{signin,jdbcType=INTEGER}, #{error,jdbcType=INTEGER}, #{createTime,jdbcType=BIGINT})</insert>
【mybatis】插入操作更新id相关推荐
- mybatis插入或更新语句返回自增逐渐id
因为公司的表用的是自增id,而不是UUID,所以在好多时候都需要返回新插入的数据的id,所以在网上搜了一些方法,大部分都是用的xml方式来写的sql,不过本人是用的注解方式,方法比较少,所以写这篇文章 ...
- Mybatis插入数据
对上文->Mybatis快速入门-<进行代码修改 1.在UserMapper.xml中添加插入操作 <!-- 插入操作--><insert id="save&q ...
- MyBatis在insert插入操作时返回主键ID
数据库为MySql时: <insert id="insert" parameterType="com.test.User" keyProperty=&q ...
- 【MyBatis笔记】04-插入操作更新操作删除操作
保存更新删除 插入操作 获取插入的最后一个id 更新操作 删除操作 查询操作在之前的笔记中~ 插入操作 映射文件 Customer.xml : 插入数据的标签为 insert,与查询 select 区 ...
- mybatis mysql 批量更新_mysql批量update更新,mybatis中批量更新操作
在日常开发中,有时候会遇到批量更新操作,这时候最普通的写法就是循环遍历,然后一条一条地进行update操作.但是不管是在服务端进行遍历,还是在sql代码中进行遍历,都很耗费资源,而且性能比较差,容易造 ...
- mysql新增,更新,批量插入操作
mysql新增和更新操作 一.Insert的几种语法 例子: CREATE TABLE `users` (`id` int(11) NOT NULL AUTO_INCREMENT,`username` ...
- 对Excel表的查询、插入和更新操作
为什么80%的码农都做不了架构师?>>> 本代码主要实现对Excel表的查询.插入和更新操作,而特别指出:Excel表的删除语句操作不支持,只能用更新来替代. using Un ...
- Mybatis之批量更新操作
2019独角兽企业重金招聘Python工程师标准>>> Mybatis之批量更新操作 更新单条记录 1 UPDATE course SET name = 'course1' WHER ...
- Mysql创建触发器实现不同表的插入、更新、删除操作
说明:Mysql5.0以上的版本才支持下面的操作. Mysql 触发器的插入.更新.删除操作. 在这里建了两个表:其中这两个表的结构不一样,这里给表admin建立触发器 在对表admin操作的同时,触 ...
最新文章
- Symfony常用指令(收藏版)
- c语言解析json数据
- 10.13 nc:多功能网络工具
- 应用系统集群解决方案
- 怎么调试内存溢出的c++代码_【C/C++】内存对齐 到底怎么回事?
- Javascript中函数声明与函数表达式的不同
- PowerDesigner使用教程 —— 概念数据模型 (转)
- wxpython界面切换_wxpython中的图形用户界面
- java hashtable 修改_Java Hashtable computeIfAbsent()用法及代码示例
- iview中position: 'fixed'最顶层z-index
- java的代码大全_java代码大全
- 由入门C语言题目浅析gets()函数的用法
- 32位汇编(1) - masm32环境配置
- 商务与经济统计 --假设检验
- 大数据告诉你,从北大青鸟毕业的学生未来发展到底怎么样?
- 帐户当前被锁定,所以用户 sa 登录失败。系统管理员无法将该帐户解锁 解决方法
- Web—13-判断网站请求来自手机还是pc浏览器
- Playable Director (TimeLine) 3D游戏的开场动画制作
- 客户成功团队的 OKR 案例
- 班级日常工作管理系统