Oracle数据库
<!-- 添加数据(自动增长) -->
<insert id="insert" parameterType="Employee">
<selectKey keyProperty="eid" resultType="int" order="BEFORE">
select seqstudent.nextval from dual
</selectKey>
insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
</insert>
Order:表示执行的顺序,before表示在执行下面的添加语句时先执行该段的代码,after表示后执行
SQServer数据
<!-- 添加数据(自动增长) -->
<insert id="insert" parameterType="Employee">
<selectKey keyProperty="eid" resultType="int" order="BEFORE">
select @@identity
</selectKey>
insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
</insert>
MySql数据库
方式一:
<!-- 添加数据(自动增长) -->
<insert id="insert" parameterType="Employee">
<selectKey keyProperty="eid" resultType="int" order="AFTER">
select LAST_INSERT_ID()
</selectKey>
insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
</insert>
方式二:使用UUID函数生成一个全球唯一的32位数字
<!-- 添加数据(自动增长) -->
<insert id="insert" parameterType="Employee">
<selectKey keyProperty="eid" resultType="int" order="BEFORE">
select UUID()
</selectKey>
insert into Employee values(#{eid},#{ename},#{sex},#{age},${birth})
</insert>