您的位置:首页 > 数据库

sql语句中让inset后返回主键id

2015-03-04 13:34 316 查看
在用ibaits做项目的时候,有时我们插入这条数据后需要返回当前的ID,其实可以这样实现:

一:在oracle中,Oracle没有autoincrement,而是用触发器实现的,CURRVAL是在触发器中定义的,具体如下

        <insert id="addNewExpert" parameterClass="applyId">

   insert into t_expert(APPLY_ID) values(#applyId#)

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

    SELECT t_expert.CURRVAL AS ID FROM DUAL

    </selectKey>
</insert>

二:在mysql中
<insert id="addNewExpert" parameterClass="applyId">  

    insert into t_expert(USERNAME,AGE) values(#username#,#age#)     

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

             SELECT last_insert_id() as signId ;   

        </selectKey>      

 </insert> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: