在使用ibatis插入数据进数据库的时候,会用到一些sequence的数据,有些情况下,在插入完成之后还需要将sequence的值返回,然后才能进行下一步的操作。
使用ibatis的selectKey就可以得到sequence的值,同时也会将值返回。不过对于不同的数据库有不同的操作方式。
对于oracle:
<insert id="insertUser" parameterClass="ibatis.User">
<selectKey resultClass="long" keyProperty="id">
select SEQ_USER_ID.nextval as id from dual
</selectKey>
insert into user
(id,name,password)
values
(#id#,#name#,#password#)
</insert>
该句话执行完之后,传进来的参数User对象DO里的id字段就会被赋值成sequence的值。
对于mysql
<insert id="insertUser" parameterClass="ibatis.User">
insert into user
(name,password)
values
(#name#,#password#)
<selectKey resultClass="long" keyProperty="id">
SELECT LAST_INSERT_ID() AS ID
</selectKey>
</insert>
将selectKey放在insert之后,通过LAST_INSERT_ID() 获得刚插入的自动增长的id的值。
分享到:
相关推荐
08_ibatis教程_sql主键生成方式.rar
08_ibatis教程_sql主键生成方式.zip 08_ibatis教程_sql主键生成方式.zip
08_传智播客ibatis教程_sql主键生成方式08_传智播客ibatis教程_sql主键生成方式
1.每个实体类需要配置各自的“SqlMap.config”在“config/SysConfig.xml”中,SqlMap,db1.Db1SqlMap就是“ibatis/db1/Db1SqlMap.config”,不同的db将分配不同的mapper类。 2.数据库链接统一放在“config/ibatis/...
Ibatis连接ORACLE数据库的小例子
ibatis代码自动生成,ibatis代码自动生成,ibatis代码自动生成,ibatis代码自动生成
使用Struts1.2+IBatis对数据库表进行增、删、改、查操作; 有清晰的案例使用说明,完整的案例, 直接可以附加看效果。 案例作者:宋海康
在用iBatis.net与数据库打交道的过程中,发现iBatis.net拼接字符串不能直接拷贝然后在dbms里执行
Ibatis 2.3.4 数据库无关分页 有示例,可以运行 网上找的很不错
描述与iBatis相关技术与数据库进行增删改查操作
IBATIS连接多数据库参考文档,只供参考,学习。
基于iBATIS的数据库访问技术及其web应用,封小钰,王飞,介绍了通过IBATIS访问数据库的方法,建立了通过IBATIS完成对数据库访问配置、实现数据库访问控制的系统。在数据持久层使用IBATIS作为Jav
运用IBATIS在三层架构的基础上建立的数据库连接,主要是一个框架,突出重点,一看就明白。最适合初学者快速学习使用,里面的条路清晰。
业务需要有很多表要创建相应的数据库pojo文件,mapper文件,和mapper.xml文件,再csdn资源上没有找到完整的maven项目,自己写了一个,直接用的,默认是,mysql,有用oracle的改下driverClass就可以了。 配置文件里的...
操作数据库 iBATIS查询,java 和spring的配置方法
全面介绍了关于ibatis操作数据库的各种类型,在程序中编辑SqlMapClient对象的成员函数的参数,从而对数据库进行更新
对Ibatis底层操作数据库做了DAO层封装
1)、数据库类型选择:目前支持Oracle和Mysql两种数据库语句的生成,默认是Oracle。 2)、要生成建表语句, a)、请在“数据库定义Excel文件路径”中选择对应的文件, b)、然后点击下面的按钮“根据数据库...
`id` char(36) NOT NULL COMMENT '主键', `user_name` varchar(40) NOT NULL COMMENT '用户名', `password` varchar(10) NOT NULL COMMENT '密码', `state` varchar(6) DEFAULT NULL COMMENT '状态', PRIMARY ...
一个关于ibatis对数据库进行增删改查操作的小例子,简单易学,方便大家快速掌握和运用。