将node.js mysql数组转换为json字符串

时间:2015-11-05 02:42:51

标签: javascript mysql arrays json node.js

我正在使用Node.js mysql并希望将MySQL查询的结果转换为json字符串。以下是我的代码;

int * GenerateSums(int a[], size_t n, int min, int max)
{
    size_t k = max + 2 - min;
    int *sums = new int[k];
    for(size_t i = 0; i < k; i++)   // clear sums
        sums[i] = 0;
    for(size_t i = 0; i < n; i++)   // set number of instances
        sums[1+a[i]-min]++;
    for(size_t i = 1; i < k; i++)   // convert to cumulative sums
        sums[i] += sums[i-1];
    return sums;
}

int CountInRange(int sums[], int a, int b)
{
    return sums[b+1] - sums[a];
}

int main()
{
    int a[] = {4,0,3,4,2,4,1,4,3,4,3,2,4,2,3,1};
    int *sums = GenerateSums(a, sizeof(a)/sizeof(a[0]), 0, 4);
    int cnt;
    cnt = CountInRange(sums, 0, 0);  // returns  1
    cnt = CountInRange(sums, 3, 4);  // returns 10
    cnt = CountInRange(sums, 0, 4);  // returns 16
    delete[] sums;
    return 0;
}

使用var mysql = require('mysql'); var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: '', database: 'hkh' }); connection.connect(); connection.query('SELECT * FROM hkh.monthly_XXX;', function (err, rows, fields) { if (err) throw err; //console.log('The solution is: ', rows[0].solution); var jsonString = JSON.stringify(rows); console.log('The solution is: ', jsonString); }); connection.end(); 有什么问题吗?当我将结果复制并粘贴到notepad ++时,json查看器说它不是格式正确的json字符串。

除了jsonString = JSON.stringify(rows);之外还有其他方法可以转换为json字符串吗?

jsonString = JSON.stringify(rows);看起来像这样;

jsonString
编辑:向所有帮助过的人道歉。原始代码工作正常。错误是由于Notepad ++插件中的问题和粗心的复制和粘贴。

0 个答案:

没有答案