Синтаксическая ошибка JMeter sql при использовании параметров со вставкой - PullRequest
0 голосов
/ 05 декабря 2018

Я работаю с JMeter для загрузки тестовых запросов в базу данных mySQL (сервер memsql, синтаксис mySQL).Я использую версию JMeter для графического интерфейса пользователя, чтобы создать XML-файл плана тестирования, а затем перейти на другой сервер и запустить этот XML в режиме без графического интерфейса.

У меня два запущенных запроса, один из которых выбирает, а другой -вставки.Оба запроса используют параметры, взятые из CSV-файла, который я сделал с помощью скрипта.Мой оператор SELECT прекрасно работает с параметрами, взятыми из CSV-файла, но я сталкиваюсь с синтаксическими ошибками с моим оператором INSERT:

INSERT INTO customer_transactions_current (`column_name1`, ... , `column_name12`)
VALUES ((${r1},${r2},${r3},${r4},${r5},${r6},${r7},${r8},${r9},${r10},${r11},${r12}));

В разделе запроса в графическом режиме в разделе «CSV Data Set 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:00», и в файле csv они присутствуют без апострофов.

Кажется, что синтаксическая ошибка как-то связана с датой и в положении, где она содержит пробел .Я пытался ввести функцию STR_TO_DATE для этого столбца, но получал синтаксические ошибки.НО, когда я пытаюсь взять некоторые значения из файла и вручную выполнить запрос, он работает нормально!Поэтому я думаю, что он должен что-то сделать для преобразования пробелов JMeter перед отправкой запроса.

Проблема в моих конфигурациях JMeter?Так как запрос в порядке вручную.

1 Ответ

0 голосов
/ 05 декабря 2018

Добавить апострофы для вставки и удаления ненужных скобок

INSERT INTO customer_transactions_current ('column_name1', ... , 'column_name12')
VALUES ('${r1}','${r2}','${r3}','${r4}','${r5}','${r6}','${r7}','${r8}','${r9}','${r10}','${r11}','${r12}');

Если у вас есть проблема с датой, см. STR_TO_DATE

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...