2016-10-19 40 views
0

2つの入力パラメータ(タイムスタンプ、両方)と1つの出力パラメータ(整数)を持つDB2ストアドプロシージャを呼び出そうとしています。私はJMeter JDBCサンプラーからSQL構文例外を取得しようとしています。パラメータの数を不一致、またそうではありません - - の場合、間違ったスキーマ名ではありませんどの -JMeterを使用してDB2ストアドプロシージャを呼び出すときの構文エラー

IBMのドキュメントから
Response code: 42884 -440 
Response message: com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-440, SQLSTATE=42884, SQLERRMC=PROCEDURE;DEVSCHEMA.GET_ROW_COUNT, DRIVER=4.19.26 

Response headers: 
1272084586, URL=jdbc:db2://<db2IP>:<port>/DB2T, UserName=<someUserName>, IBM Data Server Driver for JDBC and SQLJ 

ストアドプロシージャのいずれかが存在しないとき、私はこのエラーが発生したことを知った私は、検証しましたこれは私が疑問を呈しているのは、JMeterが別々のフィールドを提供して、フィールドの1つに誤った値を渡している可能性があるからです。

私はJMeterの知識はあまり持っていませんが、Apacheの助けを借りてJMeterのドキュメントから私は以下の値をSample Fieldsに設定しました。

Query Type: Callable Statement 
Query: CALL DEVSCHEMA.GET_ROW_COUNT(?,?,?) 
Parameter Values: ${__time(yyyy-MM-dd HH:mm:ss,)},${__time(yyyy-MM-dd HH:mm:ss,)},0 
Parameter Types: IN TIMESTAMP,IN TIMESTAMP,OUT INTEGER 
Variable Names:VARCOUNT 
Handle ResultSet: Store as a String 

誰でも間違いを犯していると思いますか?どうもありがとう。

+0

私が最初に推測したのは、大文字と小文字が混在するスキーマ名です。 'devSchema'の代わりに' DEVSCHEMA'を試してください。 – mustaccio

+0

@mustaccio実際のスキーマ名が長すぎて大文字のみであるため、これは私が入れた名前ではありません。とにかく私はちょうど質問を編集しました。 –

答えて

0

問題は解決されました。それは文字通り私が決して考えなかったものでした。 Javaコードを使用して同じSPにアクセスしようとしたときに同じエラーが発生したとき、私はStoredプロシージャを書いたDB2チームに連絡しました。そして問題はSPにありました。それらによると、executeここに掘削した後にアクセスがあったため、問題なく動作した新しいSPを作成することを好みました。それ以外はJMeter側からすべてが完璧でした。

関連する問題