У меня есть следующий код JavaScript, который я выполняю через Node
function afterConnection() {
var query = connection.query("SELECT * FROM playlist;", function (err, res) {
if (err) throw err;
console.info(res);
connection.end();
});
console.info(`The query that ran: ${query.sql}`)
}
Довольно простой. Если я выполню этот код на моем компьютере с Windows 10, на котором запущен MySQL 8, результат будет записан на консоль. Если я запустил тот же код в macOS 13.5 с той же версией MySQL, код выводит на консоль пустой массив. Я знаю, что я подключен к MySQL, потому что, если я изменяю запрос на что-то совершенно недопустимое (например, при попытке ВЫБРАТЬ из таблицы, которая не существует), я получаю сообщение об ошибке, говорящее, что таблица недействительна. Итак, MySQL использует команду, но не возвращает результат. Если я запустил запрос непосредственно в MySQL, он вернет ожидаемые данные. Я дважды проверил свои строки подключения, и, похоже, там нет никаких проблем. Кроме того, если я запускаю запрос непосредственно в Workbench, данные возвращаются оттуда, как я и ожидал. Есть предположения?
; в конце запроса - это Только для интерактивных оболочек. Это не относится к SQL, запускаемому кодом.
Вы уверены, что подключились правильно? Не говорите просто «или что-то еще», когда дело касается сообщений об ошибках. Пожалуйста, по возможности, опубликуйте точное сообщение об ошибке. Это не только помогает нам точно понять, что пошло не так, но и подтолкнет к этому вопросу других, которые застряли в той же пробке. Вы не идете к механику и не говорите: «Моя машина горит или что-то еще, вы можете это исправить?».
Сообщение об ошибке отсутствует. Я говорю, что если я явно напишу неверный запрос, SELECT * from playlist2, я получаю исключение, в котором говорится, что таблица не существует. «Или что-то еще» должно было означать или что-то еще, что соответствующая ошибка основана на плохом написанном SQL. TL; DR: приведенный выше код работает нормально, если я не введу недопустимый SQL, чтобы заставить его сломаться.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы запускали запрос на Mac непосредственно на терминале mysql?