使用BLOB参数的JMeter JDBC存储过程调用

时间:2018-12-05 11:54:24

标签: jdbc jmeter db2

出于测试目的,我需要通过JMeter调用DB2存储过程。

我建立了一个 JDBC连接,然后添加了 JDBC请求步骤,但是在填充参数时遇到了问题。

问题在于参数之一是从.bin文件中获取的BLOB,我找不到插入它的方法。该参数是从CSV文件读取的。

我所做的是:

Query Type: Callable statement
CALL MY.STOREDPROCEDURE(?,?,?)

Parameter values: ${par1},FROM_FILE('${par2}'),'a'
Parameter types: IN VARCHAR, INOUT BLOB, OUT VARCHAR

我得到的错误是它无法将String转换为Blob(

  

非法转换:无法从“ java.lang.String”转换为   “ java.sql.Blob” ERRORCODE = -4474 SQLSTAT = null。)。

我认为问题在于FROM_FILE函数返回带有文件内容的字符串。 遵循我在网上发现的一个想法,我设置了一个 JSR233采样器,以使用Groovy脚本加载该文件,我将该文件另存为一个对象,但是当我读取它时,它仍然看起来像是一个字符串,即使具有常规脚本($ {__ groovy()})。

我试图在调用中添加强制类型转换,但随后会收到关于“过程调用的文学替换解析失败”的错误。

如何将Blob传递给调用?

0 个答案:

没有答案