Я работаю над разработкой API, используя AWS API и лямбда. Я использую пакет Serverless MySQL https://www.npmjs.com/package/serverless-mysql для подключения и работы mysql.
но я не могу вставить несколько записей. Если я передам массив записей для вставки, он вставит только отдельные записи.
Пожалуйста, предложите мне, как мне вставить несколько записей без использования цикла.
values=[
[
"229",
25,
"objective",
[
"49"
],
"2019-07-24 08:59:39",
"2019-07-24 08:59:39"
],
[
"229",
26,
"descriptive",
[
"Yes i have long term illness that limits my daily activities. Test..."
],
"2019-07-24 08:59:39",
"2019-07-24 08:59:39"
]
];
var sql = 'INSERT INTO `answers` (`user_id`, `question_id`, `question_type`, `answer`, `created_at`, `updated_at`) VALUES (?)';
await connection.query(sql, values);






Я не использовал этот пакет раньше, но просто просматривая документацию, не кажется, что он предоставляет дополнительные возможности для batch вставки. Поэтому я думаю, что вам все равно нужно составить запрос, как вы обычно делаете пакетную вставку для mysql.
INSERT INTO table_name (field1,field2,field3) VALUES(1,2,3),(4,5,6),(7,8,9);
Пакетный режим недоступен в этом. Поэтому, если вы хотите избежать цикла, один из вариантов — составить запрос, как показано в одном ответе:
INSERT INTO table_name (field1,field2) VALUES(1,2,3),(4,5,6);
Но лучше всего создать отдельную лямбда-функцию для последовательной вставки значений. Это даст вам больше гибкости для вставки значений.
https://docs.aws.amazon.com/cli/latest/reference/glue/create-user-defined-function.html
Спасибо за ответ!.. Я проверю и дам вам знать