2009-10-07 58 views
2

谁能告诉我什么是错的? 我有两个过程和两个映射。一个正常工作,另一个失败。 这一个正常工作:ibatis输入/输出参数问题

<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> 

而这一次失败:

<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> 

与此异常:

--- 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 

我不明白这有什么错第二程序和/或它的映射。这可能是“INOUT”的一些问题吗?

回答

0

您为INOUT参数传递了什么值? 我的猜测是你需要为它提供一个默认值。

+0

我试图通过一个默认值,但它并没有帮助 – mykola

5

我试图传递一个默认值,但它并没有帮助


它的工作!只需将id属性的jdbcType更改为NUMERIC即可使用!不幸的是,我不再需要它了。 :)