Chinaunix首页 | 论坛 | 博客
  • 博客访问: 979953
  • 博文数量: 152
  • 博客积分: 4937
  • 博客等级: 上校
  • 技术积分: 1662
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-05 16:55
文章分类

全部博文(152)

文章存档

2013年(12)

2012年(6)

2011年(58)

2010年(43)

2009年(1)

2008年(15)

2007年(17)

我的朋友

分类: Java

2010-07-14 18:28:13

Xml代码 复制代码
  1.     
  2. <insert id="insertProduct-ORACLE" parameterClass="com.domain.Product">    
  3.     <selectKey resultClass="int" keyProperty="id" type="pre">    
  4.             
  5.     selectKey>    
  6.         
  7. insert>   

MS SQL Server配置
Xml代码 复制代码
  1.     
  2. <insert id="insertProduct-MS-SQL" parameterClass="com.domain.Product">    
  3.         
  4.     <selectKey resultClass="int" keyProperty="id" type="post">    
  5.           
  6.           
  7.     selectKey>    
  8. insert>  

上述MS SQL Server配置随是官网提供的配置,但实际上却恰恰隐患重重!按下述配置,确保获得有效主键。
Xml代码 复制代码
  1.     
  2. <insert id="insertProduct-MS-SQL" parameterClass="com.domain.Product">    
  3.     <selectKey resultClass="int" keyProperty="id">    
  4.          
  5.         SELECT SCOPE_IDENTITY() AS ID ]]>  
  6.     selectKey>    
  7. insert>  

MySQL配置
Xml代码 复制代码
  1.   
  2. <insert id="insertProduct-Mysql" parameterClass="com.domain.Product">  
  3.         
  4.     <selectKey resultClass="int" keyProperty="id">  
  5.             
  6.           
  7.     selectKey>  
  8. insert>  

通过以上方式,可以最大程度上确保插入数据的时候获得当前自增主键。
阅读(1441) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~