我正在使用JMeter在mySQL数据库(memsql服务器,mySQL语法)上加载测试查询。我正在使用gui版本的JMeter创建一个测试计划xml文件,然后转到另一个服务器并以非gui模式运行该xml。
我有两个正在运行的查询,一个是选择,另一个是插入。这两个查询都使用从我用脚本生成的csv文件中获取的参数。对于从csv文件中提取的参数,SELECT语句工作得很好,但是我的INSERT语句遇到语法错误:
INSERT INTO customer_transactions_current (`column_name1`, ... , `column_name12`)
VALUES ((${r1},${r2},${r3},${r4},${r5},${r6},${r7},${r8},${r9},${r10},${r11},${r12}));在gui模式下'CSV数据集Config‘下的查询部分中,我选择用',’来分隔数据,变量名是r1、..、r12。在查询本身下,我输入了参数类型,并再次输入了相同的名称,就像我对工作SELECT查询所做的那样。
当我运行查询时,我在第一列(类型为datetime)上遇到语法错误:
java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '19:00:00,75400492,936988,56,1115,5,2156,8,2,3,909,3))' at line 2我输入的日期是表格:'2018-11-2 20:00‘,在csv文件中,它们不带撇号。
语法错误似乎与日期和持有空间的位置有关。我试着为该列输入STR_TO_DATE函数,但一直出现语法错误。但是,当我尝试从文件中获取一些值并手动运行查询时,它工作得很好!因此,我的想法是,在发送查询之前,它需要完成JMeter对空格的转换。
我的JMeter配置有问题吗?因为查询是可以手动的。
发布于 2018-12-05 10:04:30
添加撇号以插入和删除不必要的括号
INSERT INTO customer_transactions_current ('column_name1', ... , 'column_name12')
VALUES ('${r1}','${r2}','${r3}','${r4}','${r5}','${r6}','${r7}','${r8}','${r9}','${r10}','${r11}','${r12}');如果您有日期问题,请参阅使用DATE
https://stackoverflow.com/questions/53629496
复制相似问题