Можно ли создать запрос для выполнения нескольких запросов в одном запросе в JavaScript? - PullRequest
0 голосов
/ 28 сентября 2018

Я хотел бы отправить несколько запросов в виде строки.Я вернул результат как объект с помощью JavaScript.однако из-за «,» между запросами возникает ошибка.Я не мог удалить "," между запросами.

    "INSERT INTO  membership ( userId,roleId,groupId )
    VALUES (5,1,5),
    INSERT INTO  membership ( userId,roleId,groupId )
    VALUES (5,1,4),
    INSERT INTO  membership ( userId,roleId,groupId )
    VALUES (5,1,5)"

Можно ли выполнить несколько запросов за один запрос?

это код javascript, что я вернул строку.

var objArray = [];
for (var i =0; i< obj.length ;i++) {
objArray.push( " INSERT INTO membership(id,userId,roleId,groupId) VALUES (" 
obj[i].id + "," +  obj[i].userId  + "," + obj[i].role + "," + obj[i].group + 
")");
 } 
 return objArray.toString();

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Перейти для запроса множественной вставки

var beforeQuery = 'INSERT INTO membership(id,userId,roleId,groupId) VALUES ';
var qvalues = [];
for (var i=0; i<obj.length; i++) {
   qvalues.push('(' + obj[i].id + ',' + 
   obj[i].userId  + ',' + 
   obj[i].role + ',' + 
   obj[i].group + ')');
} 

var query = beforeQuery + qvalues.join(",");
// result would be something like:
// INSERT INTO membership(id,userId,roleId,groupId) VALUES (1,2,3,4),(3,5,3,6),(2,5,19,2);

// execute query here with query variable, all rows will be inserted with a single query
0 голосов
/ 28 сентября 2018

Используйте ; вместо ,.Пример QUERY1;QUERY2;QUERY3

...