0
回答
服务器上MyBatis 调用存储过程 sql语句被改变
滴滴云服务器,限时包月0.9元,为开发者而生>>>   

mybatis 通过xml方式使用mysql的存储过程,在本地测试的时候一切正常,但是放到服务器上执行的sql语句就变了
在本地测试的时候执行的是

 {call p_mishi_selectFavoriteList(?)} 

在服务器上就变成了 

select count(0) from ({call p_mishi_selectFavoriteList(?)}) tmp_count

以下是配置 

<select id="selectFavoriteList" parameterType="java.lang.Long" resultMap="mapForFavoriteList" statementType="CALLABLE">
<![CDATA[{call p_mishi_selectFavoriteList(#{userid,jdbcType=BIGINT,mode=IN})}]]>
</select>
<resultMap type="com.mishi.app.model.Favorite" id="mapForFavoriteList">
   <id column="favorite_id" jdbcType="BIGINT" property="id" />
    <result column="favorite_addTime" jdbcType="TIMESTAMP" property="addtime" />
    <result column="favorite_deleteStatus" jdbcType="BIT" property="deletestatus" />
    <result column="type" jdbcType="INTEGER" property="type" />
    <result column="goods_id" jdbcType="BIGINT" property="goodsId" />
    <result column="store_id" jdbcType="BIGINT" property="storeId" />
    <result column="user_id" jdbcType="BIGINT" property="userId" />
</resultMap>

<无标签>
举报
MaGic丶
发帖于10个月前 0回/167阅
顶部