JS Node, возвращающий только числа, а не правильные значения

0

Я пытаюсь использовать js-узел для отображения результатов запроса mysql, чтобы впоследствии вывести его на веб-страницу.

На данный момент я просто вывод результатов запроса в консоль, код ниже:

var mysql = require('mysql');
const querystring = require('querystring')

var connection = mysql.createConnection({
    host    : 'localhost',
    user    : 'webuser',
    password: 'p0ssw0rd',
    database: 'balancesheet2'
});

connection.connect(function(err) {
    if (err) throw err;
    console.log('Connected!');
    connection.query('SELECT * FROM balancesheet2.orders', function (err, result, fields) {
    if (err) throw err;
    result = querystring.stringify(result,' | ',' :=');
    console.log('Result: ' + result);
    });

});

Результаты, которые я получаю, приведены ниже:

Result: 0 := | 1 := | 2 := | 3 :=

Я не уверен, где проблема, это код с кодом или где-то с базой данных?

  • 0
    Вызов querystring.stringify для массива результатов кажется довольно странной вещью. Какой результат вы ожидаете от этого?
  • 0
    Просто сделайте console.log(result) и оставьте в поле querystring.stringify . Node.js console.log не лучший в отображении свойств объекта и даже хуже, если вы добавляете его в строку, для лучшего вывода вы можете также рассмотрите util.inspect, -> nodejs.org/api/util.html#util_util_inspect_object_options
Показать ещё 3 комментария
Теги:
mysql-workbench

1 ответ

0

Ваш result - это массив, поэтому вам, вероятно, нужно будет перейти к содержимому result чтобы получить значения, напечатанные в противном случае существующий код просто печатает индекс массива. Также обратите внимание, что метод querystring.stringify() создает строку запроса URL из заданного объекта obj путем итерации через объект "собственные свойства".

  • 0
    Это странная вещь, но querystring.stringify будет перебирать result , поэтому OP получает числа ( 0 , 1 и т. Д.), Которые являются собственными свойствами массива. Так что вопрос в том, почему значения все пустые.
  • 0
    @TJCrowder да, он делает это для того, чтобы это произошло, OP должен перебрать result и выполнить querystring.stringify() для каждого из этих объектов.
Показать ещё 4 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню