ibaits插入即获取主键(mssql,mysql,oracle)

来源:互联网 发布:算法精髓 编辑:程序博客网 时间:2024/06/04 01:10

oracle主键需预先生成,通过sequence;mysql和mssql是插入后生成。
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>
 
本篇文章来源于:开发学院 http://edu.codepub.com   原文链接:http://edu.codepub.com/2010/0824/25311.php

原创粉丝点击