0
点赞
收藏
分享

微信扫一扫

pgsql在Mybatis中获取新增记录自增后的id

追风骚年 2022-04-25 阅读 51
java

Mybatis pgsql在Mybatis中获取新增记录自增后的id

1.Mybatis中的写法

	<!-- 添加信息 -->
	<insert id="add" parameterType="java.util.HashMap">
	<selectKey resultType="java.lang.Integer" order="AFTER" keyProperty="fid">
		SELECT currval('t_pay_cancel_fid_seq'::regclass) AS fid
	</selectKey>
	INSERT INTO t_pay_cancel
	(
		pay_no,
		arch_id,
		cancel_reson,
		add_oper
	)
	VALUES
	(
		#{pay_no},
		#{arch_id},
		#{cancel_reson},
		#{add_oper}
	)
	</insert>

以下进行说明:

order="AFTER",代表执行完以下insert语句后再执行获取自增的语句。

keyProperty="fid",fid是自增列

't_pay_cancel_fid_seq'::regclass,是自增序列名,一般在表设计器中的自增序列字段可以看到该名称,获取到的自增值会添加到入参对象中,可以用HashMap对象map.get('fid')来获取。

2.如何获取自增值

            HashMap<String, Object> hmap = new HashMap<String, Object>();

            rc= payCancelDAO.add(hmap);
            if(rc>0){
                String fid=Comm.getString(hmap.get("fid"));
                //获取的fid 就是自增值
            }

定义一个hashmap类型入参hmap,会将自增值附加到该对象的fid键,可以通过hmap.get('fid')即可成功获取自增后的值。

举报

相关推荐

0 条评论