Предполагам, че използвате node-mysql . (но трябва да работи и за node-mysql2 )
документите казва:
Поддръжката на множество изрази е деактивирана от съображения за сигурност (разрешава атаки с инжектиране на SQL, ако стойностите не са правилно екранирани).
Заявки за множество изрази
За да използвате тази функция, трябва да я активирате за вашата връзка:
var connection = mysql.createConnection({multipleStatements: true});
След като активирате, можете да изпълнявате заявки с множество изрази, като разделите всеки израз с точка и запетая ;
. Резултатът ще бъде масив за всяко изявление.
Пример
connection.query('SELECT ?; SELECT ?', [1, 2], function(err, results) {
if (err) throw err;
// `results` is an array with one element for every statement in the query:
console.log(results[0]); // [{1: 1}]
console.log(results[1]); // [{2: 2}]
});
Така че, ако сте активирали multipleStatements
, първият ви код трябва да работи.