mybatis 调用mysql 存储过程 返回多个结果集

2022-08-21 12:56:48
mysql存储过程是这样的 
create procedure sp_get_user_count 
( 
out v_count int 
) 
begin 
select count(1) into v_count from t_user; 
select * from t_dept; 
select * from t_class; 
end; 
由于mysql不能返回游标,那么使用mybatis框架在取的时候应该怎么取呢?怎样确定取出来的是t_dept的还是t_class? 
<!--这段应改怎么写啊?--> 
<select id="selectAll" > 
        call sp_get_user_count() 
</select>

配置你要返回的类型:
<resultMap>
这里按顺序配置你的返回类型
</resultMap>

  <select id="selectAll" parameterType="java.util.Map" statementType="CALLABLE"
    resultMap="nameResult">
    {call sp_get_user_count(
      #{ids,mode=OUT,jdbcType=INTEGER},
      #{t_dept,jdbcType=CURSOR,mode=OUT},
      #{t_class,mode=OUT,jdbcType=CURSOR})}
  </select>


转载于:https://my.oschina.net/crazybird/blog/370406

  • 作者:weixin_33739523
  • 原文链接:https://blog.csdn.net/weixin_33739523/article/details/92046236
    更新时间:2022-08-21 12:56:48