JMeter - 将值从第一个JDBC请求传递到第二个JDBC请求

时间:2015-03-13 15:23:56

标签: oracle jdbc jmeter

我的环境:JMeter v2.11,Oracle 12,JDK 7

我有一个Jmeter线程,我正在尝试将值从一个JDBC Request采样器传递到另一个JDBC Request采样器,但是当第二个JDBC请求运行时,结果为空。

我已经确认SQL没问题1.在Oracle Developer中运行SQL,数据成功返回

我还确认如果我在Jmeter中指定值而不是从第一个采样器中获取值 - 查询返回结果正确

我的工作:

JDBC Request 1 --> Query Type: Select Statement 
select max(appid) from table; Variablename --> appid
JDBC Request 2 --> Query Type: Prepared Select Statement
select datevalue from table1 
inner join table2 on table1.id = table2.id where value = ?; 
ParameterValue = ${appid}, ParameterType = VARCHAR

当我运行两个JDBC Request Samplers时 - 它们都在View Results Tree Listener中成功执行报告,JDBC Request 1在Response Data中返回一个值,但JDBC Request 2的结果为空(返回的值只是日期值栏。)

我自己运行了JDBC Request 2,它在思考之后产生了一个空白的结果 - 让我相信我没有成功地从JDBC Request传递$ {appid}值1成功完成JDBC Request 2.

任何人都可以告诉我我做错了什么?或者可能是另一种将值从一个JDBC请求传递到另一个JDBC请求的方法?

我已经浏览了一下,找到了关于将值从JDBC传递到HTTP请求的帖子,还发现了一些非常有用的帖子(这让我走得很远),但没有完全符合我需要的场景。

同样,与我的所有帖子一样,我感谢所有建议/帮助等。

干杯

1 个答案:

答案 0 :(得分:1)

抱歉浪费每个人的时间。我发现了问题。

ParameterValue值不正确。该值必须为$ {appid_1}(请注意'下划线1'('_ 1')值。

将$ {appid}更改为$ {appid_1}后,第二个JDBC请求的结果已正确填充。