ibatis in/out paramètre de problème
Quelqu'un peut me dire quel est le problème?
J'ai deux procédures et les deux mappages pour eux. L'une fonctionne bien et l'autre échoue.
Celui-ci fonctionne très bien:
<parameterMap id="mapping-descriptions" class="java.util.Map">
<parameter property="id" javaType="java.lang.Long" jdbcType="NUMBER" mode="IN"/>
<parameter property="lang" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="shortDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/>
<parameter property="fullDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT"/>
</parameterMap>
<procedure id="get-description"
parameterMap="mapping-descriptions">
{call COM_DESCRIPTION_PKG.get_desc(?,?,?,?)}
</procedure>
Et celui-ci échoue:
<parameterMap id="mapping-description-modifiable" class="java.util.Map">
<parameter property="id" javaType="java.lang.Long" jdbcType="NUMBER" mode="INOUT"/>
<parameter property="lang" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="shortDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="fullDesc" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN"/>
<parameter property="modify" javaType="boolean" jdbcType="NUMBER" mode="IN"/>
</parameterMap>
<procedure id="add-description"
parameterMap="mapping-description-modifiable">
{call COM_DESCRIPTION_PKG.add_desc(?,?,?,?,?)}
</procedure>
avec cette exception:
--- The error occurred while executing update procedure.
--- Check the {call COM_DESCRIPTION_PKG.add_desc(?,?,?,?,?)}.
--- Check the output parameters (register output parameters failed).
--- Cause: java.sql.SQLException: Invalid column type: -99999999
Je ne comprends pas quel est le problème avec la deuxième procédure et/ou de sa cartographie. Peut-il y avoir un problème avec "INOUT"?
Vous devez vous connecter pour publier un commentaire.
J'ai essayé de passer une valeur par défaut, mais il n'a pas aidé
Ça fonctionne! Juste changé jdbcType de la propriété de l'id NUMÉRIQUE et il est travaillé! Malheureusement je n'ai pas besoin de plus. 🙂
Quelle est la valeur que vous êtes de passage pour la INOUT paramètre ?
Ma conjecture est que vous devez fournir une valeur par défaut pour elle.