私はしばらくこれに頭を悩ませてきました。
Java コードで iBatis を使用して、Sybase DB にある Stored Proc を実行しています。
ストアド プロシージャはいくつかのパラメータを予期しています。それらのいくつかは次のように宣言されていますVARCHAR (6)
したがって、私の iBatis マッピングでは、これらのパラメーターに対して次のことを行いました。
<parameter property="searchUserId" jdbcType="String" javaType="java.lang.String" mode="IN"/>
ただし、これを行うと、次のエラーが発生します。
--- Check the statement (update procedure failed).
--- Cause: java.sql.SQLException: JZ006: Caught IOException: java.io.IOException: JZ0SL: Unsupported SQL type 1111.
Caused by: java.sql.SQLException: JZ006: Caught IOException: java.io.IOException: JZ0SL: Unsupported SQL type 1111.
そこで、マッピングを次のように変更しました。
<parameter property="searchUserId" jdbcType="VARCHAR" javaType="java.lang.String" mode="IN"/>
上記のエラーは解消されましたが、現在、パラメーターはSP に渡されたsearchUserId
値を取得しています。null
私は自分のJavaコードから私が渡していないことを確信していますnull
。
誰かがこの問題に直面しましたか? マッピングを何に変更すればよいですか??