获取mysql数据库中的自增主键属性值和非自增主键属性值的方法

来源:互联网 发布:智能数据盒子 编辑:程序博客网 时间:2024/05/22 00:05
  1. 获取mysql数据库中的自增属性值得方法:
    将插入数据的自增属性值通过SELECT LAST_INSERT_ID()的方法得到。e.g.:User表中有一个id为主键,且设置为自增属性,现在往数据库中插入一条数据,并且要返回自增属性的值。
<insert id="insertUser" parameterType="com.dy.po.User">insert into user (username,birthday,sex,address)value(#{username},#{birthday},#{sex},#{address})<selectKey keyProperty="id" order="AFTER" resultType="int">SELECT LAST_INSERT_ID()</selectKey></insert>

其中:keyProperty:将查询到的主键设置到parameterType指定的对象的那个属性;
order:SELECT LAST_INSERT_ID()执行顺序,相当于insert语句来说它的执行顺序。
resultType:指定SELECT LAST_INSERT_ID()的结果类型。
在insert之后将数据返回到user对象中,通过user.属性值得到相应的自增属性值。

2 获取mysql数据库中的非自增属性值的方法
主要是通过使用mysql的uuid()函数生成主键,同样拿上述例子,需要修改表中id字段类型为string,长度设置成35位。
与上面的顺序不同的是,需要执行的uuid()语句顺序相对于insert语句之前执行。

<insert id="insertUser" parameterType="com.dy.po.User">insert into user (username,birthday,sex,address)value(#{username},#{birthday},#{sex},#{address})<selectKey keyProperty="id" order="BEFORE" resultType="java.lang.String">        SELECT uuid()</selectKey> </selectKey></insert>
1 0
原创粉丝点击