ORACLEの場合,DBPreparedStatementやDBCallableStatementで使用している?パラメタに,文字列,又はDBR_BINARYの値を指定するときは,次の点に注意してください。
SQLを実行※する場合,前回の実行後にSetParamメソッドで値を変更して再度実行していると,カーソルの再解析が必要になることがあります。この場合は,再度Executeメソッドを実行してSetParamメソッドで値を設定し直してからSQLを実行してください。
カーソルの再解析が必要になるのは次の場合です。
例えば,SetParamメソッドで200バイトの文字列を設定してExecuteUpdateメソッドを実行した後,300バイトの文字列をSetParamメソッドで設定して再度ExecuteUpdateメソッドを実行すると,ORACLEのエラーになります。このような場合は,Executeメソッドを実行してから,SetParamメソッドで300バイトの文字列を設定してExecuteUpdateメソッドを実行してください。
注※ ここではExecuteUpdateメソッド,又はGetResultSetメソッドの実行を指します。