Я пытаюсь выполнить многократный запрос к базе данных MySQL. Я использую node-mysql и ExpressJS. Я включил несколько запросов операторов, установив для множественного состояния значение true:
const connection = mysql.createPool(config.databaseOptions, {multipleStatements: true});
У меня есть следующий запрос нескольких операторов:
app.get('/information', urlencodedParser, function (req, res) {
var mysql = require('./resources/mysqlConnection');
var qry = "SELECT e.emp_id, company_id, age, country FROM employee as e INNER JOIN company as c ON e.emp_id = c.emp_id WHERE e.emp_id = ?;SELECT * from players as p INNER JOIN teams as t ON p.team_id = t.team_id WHERE country = ?";
mysql.query(qry, ["E00909", "Japan"], function(err, rows) {
if (err) throw err;
console.log(rows);
var emp_data = rows[0];
var team_data = rows[1];
res.render('info.ejs', {data : emp_data});
});
});
Однако, когда я запускаю сервер, я получаю следующееошибка:
Error: ER_PARSE_ERROR: 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 'SELECT * from players as p INNE'
Я прочитал другие посты, касающиеся нескольких запросов к операторам, но решением всех этих случаев было включение нескольких запросов к операторам, установив для множественных состояний значение true. Я уже сделал это, поэтому я не уверен, почему я получаю эту ошибку. Я думаю, что массив ["E00909", "Japan"]
в коде является источником этой проблемы, но я не уверен, как ее решить. Дальнейшее написание массива как ['E00909', 'Japan']
не решило проблему. Любые идеи приветствуются.