1
我想將查詢結果格式化爲包含每個記錄的數組對象的單個JSON對象。需要編寫腳本的幫助 - JSON.stringify
函數正在構建一個對象數組(我的JSON從裏到外!)。如何將node.js sqlite3記錄集格式化爲記錄數組的JSON對象
我總是可以編寫一個函數來手動構建JSON,但我有一種感覺,那就是已經有了一個函數來執行我正在尋找的功能。我無法找到它。
JSON字符串我想:
{["id":1,"info":"Ipsum 0"], ["id":2,"info":"Ipsum 1"],
["id":3,"info":"Ipsum 2"], ["id":4,"info":"Ipsum 3"] (and so on) }
實際結果
[{"id":1,"info":"Ipsum 0"},{"id":2,"info":"Ipsum 1"},
{"id":3,"info":"Ipsum 2"},{"id":4,"info":"Ipsum 3"},
{"id":5,"info":"Ipsum 4"},{"id":6,"info":"Ipsum 5"},
{"id":7,"info":"Ipsum 6"},{"id":8,"info":"Ipsum 7"},
{"id":9,"info":"Ipsum 8"},{"id":10,"info":"Ipsum 9"}]
到目前爲止我的代碼(基於this example)基於
var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database(':memory:');
db.serialize(function() {
db.run("CREATE TABLE lorem (info TEXT)");
var stmt = db.prepare("INSERT INTO lorem VALUES (?)");
for (var i = 0; i < 10; i++) {
stmt.run("Ipsum " + i);
}
stmt.finalize();
var sql = "SELECT rowid AS id, info FROM lorem";
// Print the records as JSON
db.all(sql, function(err, rows) {
console.log(JSON.stringify(rows));
});
});
db.close();
令人驚訝的結果是一組對象的結果? –
也許我將它轉換爲JSON的功能錯誤。我希望看到我描述的格式的結果。 –
再一次:有什麼令人驚訝的呢?你對JSON格式有很好的瞭解嗎? – gustavohenke