Java クラスから plsql 関数を呼び出したいのですが、その関数 (isValidPeriod) はブール型のデータ型を返し、JDBC はそれをサポートしていません
5153 次
3 に答える
5
OCI レイヤーの制限により、JDBC ドライバーは BOOLEAN パラメータを PL/SQL ストアド プロシージャに渡すことをサポートしていません。Java ブール型が PL/SQl ブール型と一致しません。Oracle のドキュメントによると、BOOLEAN は PL/SQL 型のみであり、「java.lang.Boolean」クラスと PL/SQL BOOLEAN データ型の間にマッピングはありません。
そのため、代わりに整数を返すようにデータベース PL/SQL 関数を変更する必要があるかもしれません。
また
ラッパーを作成するだけです:function isValidPeriodInt(<params>) return integer is begin <call isValidPeriod and return 1 on true, 0 on false> end;
于 2013-06-18T06:54:29.977 に答える