您的位置:首页 > 理论基础 > 计算机网络

iBatis自动生成的主键 返回主键 (Oracle,Sql Server,Mysql) 转自:http://www.oraforum.net/thread-421-1-1.html

2010-10-21 15:03 811 查看
iBatis自动生成的主键

很多数据库
支持自动生成主键的数据
类型。不过这通常(并不总是)是个私有的特性


SQL
Map 通过<insert>的子元素<selectKey>来支持自动生成的键值。它同时支持预生成(如

Oracle)和后生成两种类型(如 MS-SQL Server)。下面是两个例子:

<

!—Oracle SEQUENCE Example


-->

<insert id="insertProduct-ORACLE
" parameterClass="com.domain.Product">

<selectKey resultClass="int" keyProperty="id" >

SELECT STOCKIDSEQUENCE.NEXTVAL AS ID FROM DUAL

</selectKey>

insert into PRODUCT (PRD_ID,PRD_DESCRIPTION)

values (#id#,#description#)

</insert>

<!— Microsoft SQL Server IDENTITY Column Example


-->

<insert id="insertProduct-MS-SQL" parameterClass="com.domain.Product">

insert into PRODUCT (PRD_DESCRIPTION)

values (#description#)

<selectKey resultClass="int" keyProperty="id" >

SELECT @@IDENTITY AS ID

</selectKey>

</insert>

<!-- Mysql  这个例子是我自己加上去的


-->

<insert id="insertProduct-Mysql" parameterClass="com.domain.Product">

insert into PRODUCT(PRD_DESCRIPTION)

values (#description#)

<selectKey resultClass="int" keyProperty="id">

SELECT LAST_INSERT_ID()

</selectKey>

</insert>

转自:http://www.oraforum.net/thread-421-1-1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: