我在 JMeter 2.13 中使用 JDBC 采样器。
我的 JMeter 采样器中有大约 100 个删除语句,如下所示:
delete from abc where id >= ${Variable_Name};
delete from qwe where id >= ${Variable_Name};
delete from xyz where id >= ${Variable_Name};
问题是,当我在 JDBC 采样器中运行单个语句时,它工作正常。但是当我尝试从 JDBC 采样器运行 2 个或 2 个以上语句时。它总是抛出错误。
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 'delete from qwe where id >= 1; 附近使用的正确语法。
有人可以提一下解决方法吗?以及我如何克服这个问题。
看来你不能在一个单一的语句中执行多个语句JDBC Request
元素。
我遇到过类似的情况,我需要在继续其余测试之前对数据库执行一些清理语句。我能够通过从外部文件读取 SQL 语句来实现这一点,使用CSV Data Set Config
嵌套在一个Loop Controller
,在单独的setUp Thread Group
.
元素的放置方式如下:
我使用了以下配置:
循环控制器
CSV 数据集配置
- 文件名:
/path/to/multiple-statements.sql
- 变量名称:
STMT
- EOF 上的回收:
False
- 在 EOF 处停止线程:
True
JDBC 请求
The Loop Controller
被设置为永远运行,因为停止条件设置在CSV Data Set Config
。每次迭代都会读取文件的一行,设置变量STMT
, then JDBC Request
将执行查询${STMT}
.
当到达文件末尾时,setUp Thread Group
将停止并进行核心测试Thread Group
将继续。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)