mybatis的insert语句插入数据时的返回值

mybatis的sql语句一般是配置在配置文件中,现先给出一个例子,
sqlMap.xml文件中的一条插入语句:

<insert id="add" parameterClass="xxx">
        insert into A(a, b, c, d)
        VALUE
        (#a#, #b#, #c#, #d#)
</insert>

以上的代码片段只是最简单的插入语句,上面这条SQL语句无论执行结果是成功还是失败,它的返回值都是null

如果想要在执行插入之后得到某个非null的返回值,上面那条sql语句需要再加点‘料’:

<insert id="add" parameterClass="xxx">
        insert into A(a, b, c, d)
        VALUE
        (#a#, #b#, #c#, #d#)
        <selectKey resultClass="java.lang.Integer" keyProperty="id" >
            SELECT @@IDENTITY AS ID
        </selectKey>
</insert>

这样写的话当插入一条数据的时候,该插入操作的返回值就是刚刚插入的 那条记录的主键值。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值