oracle主键需预先生成,通过sequence;mysql和mssql是插入后生成。

mysql:

<insert id="insertStu_mysql" parameterClass="stu">  insert into stu(name)  values (#name#)  <selectKey resultClass="int" keyProperty="id" >  select LAST_INSERT_ID()selectKey>
insert>
ibatis测试代码:
SqlMapClient client = SqlConfig.getSqlClient();
Stu s = new Stu();s.setName(“test”);client.insert("insertStu-mysql",s);
//获取主键
System.out.print(" pk = " + s.getId());

------------------------------------------------------------------
oracle:预先通过sequence获取
insertStu-oracle" parameterClass="stu">int" type="pre" keyProperty="id" >SELECT STOCKIDSEQUENCE.NEXTVAL AS VALUE FROM DUAL  insert into STU (ID,NAME) values (#id#,#name#)

mysql :插入后生成

<insert id="insertStu-mssql" parameterClass="stu">  insert into STU(name)  values (#name#)  <selectKey resultClass="int"  keyProperty="id" >  select @@IDENTITY as value  selectKey>
insert>   

转载于:https://www.cnblogs.com/laoxingxuzhou/archive/2010/08/24/5044079.html

ibaits插入即获取主键(mssql,mysql,oracle)相关推荐

  1. MyBatis框架——mybatis插入数据返回主键(mysql、oracle)

    向数据库中插入数据时,大多数情况都会使用自增列或者UUID做为主键.主键的值都是插入之前无法知道的,但很多情况下我们在插入数据后需要使用刚刚插入数据的主键,比如向两张关联表A.B中插入数据(A的主键是 ...

  2. Mybatis 插入时获取主键的方式

    mybatis 作为一个主流的 ORM 框架,深受广大开发者的喜爱.有人的地方就有江湖,有代码的地方自然有坑,下面来说说获取 mybatis 的插入后返回的主键. 我们可以想一下自动增长的主键特性,在 ...

  3. mysql插入成功返回主键_MyBatis + MySQL返回插入成功后的主键id

    这是最近在实现perfect-ssm中的一个功能时碰到的一个小问题,觉得需要记录一下,向MySQL数据库中插入一条记录后,需要获取此条记录的id值,以生成对应的key值存入到redis中,id为自增i ...

  4. Kudu : 插入无法获取主键冲突的异常

    1. 背景 因为业务需要,想插入Kudu的时候,如果主键已经存在,那么报错,主键冲突异常. 代码如下 *** kudu的插入* @author Administrator**/ public clas ...

  5. 插入后获取主键id(tkMapper)

    @Id @Column(name = "id", insertable = false) @KeySql(useGeneratedKeys = true) private Inte ...

  6. mybatis mysql usegeneratedkeys_mybatis中useGeneratedKeys用法--插入数据库后获取主键值

    前言:今天无意在mapper文件中看到useGeneratedKeys这个词,好奇就查了下,发现能解决我之前插入有外键表数据时,这个外键获取繁琐的问题,于是学习敲DEMO记录 在项目中经常需要获取到插 ...

  7. mybatis中useGeneratedKeys用法--插入数据库后获取主键值

    前言:今天无意在mapper文件中看到useGeneratedKeys这个词,好奇就查了下,发现能解决我之前插入有外键表数据时,这个外键获取繁琐的问题,于是学习敲DEMO记录    在项目中经常需要获 ...

  8. 3、JavaWeb中Service层的作用、MyBatis的重要组件、mybatis-config.xml中的别名映射、properties配置、#{}和${}的区别、获取插入数据的主键值

    文章目录 1.Service层的作用 2.MyBatis重要组件 Resources SqlSessionFactoryBuilder SqlSessionFactory SqlSession 针对上 ...

  9. mysql mybatis 主键id_MyBatis+MySQL 返回插入的主键ID-Go语言中文社区

    需求:使用MyBatis往MySQL数据库中插入一条记录后,需要返回该条记录的自增主键值. 方法:在mapper中指定keyProperty属性,示例如下: insert into user(user ...

最新文章

  1. VBScript中InStr函数的用法
  2. HDU - 2041 - 超级楼梯(dp)
  3. python能做高频交易吗_python金融高频交易Python ord()是什么?ord()有什么用?
  4. oracle数据库SQL入门
  5. embedding_Keras嵌入层
  6. SQL Server 2022 DataSheet
  7. Proxy Hosted Virtual
  8. 使用DBATools PowerShell修复SQL Server中的孤立用户
  9. Java下使用Apache POI生成具有三级联动下拉列表的Excel文档
  10. 有服主传送玩家指令_我的世界:不用指令能够到达边境之地吗?实验证明,根本就不可能...
  11. (附源码)spring boot小说网站系统 毕业设计 041446
  12. 普通话测试软件字体怎么调整,普通话测试方案
  13. Cinnamon 任务栏网速绘制内存和CPU使用率竖线
  14. java用ffmpeg获取音频信息及转化音频采样率、比特率、声道数量、格式
  15. 【办公实用网站收集】免费模板
  16. 基于PHP+MySQL的美容会所企业资产管理系统
  17. Word里面的文字怎么批量替换
  18. OpenCV Mat与uchar*指针相互转换赋值
  19. 程序员需要了解的 现代散文精选翻译
  20. 序:何为高级java开发工程师?

热门文章

  1. [ASP.NET MVC 小牛之路]10 - Controller 和 Action (2)
  2. jQuery 加法计算 使用+号即强转类型
  3. 如何在OpenStack环境中实现多Region
  4. ECLIPSE在线安装SVN
  5. elasticsearch分布式搜索配置文件详解
  6. linux 修改home 目录
  7. Linux挂载Windows共享目录
  8. TP-link 841N 刷DD-WRT固件
  9. 将excel中是数据导入数据库
  10. Struts2 的stream result用法