'节点filename.js'命令它在哪里存储我的数据?

时间:2014-07-28 22:51:54

标签: node.js angularjs postgresql heroku

我正在尝试将我的AngularJS应用程序连接到heroku数据库。我在这里遵循这个指南(http://nodeexamples.com/2012/09/21/connecting-to-a-postgresql-database-from-node-js-using-the-pg-module/),我到了最后,它甚至显示了我使用代码“client.query(INSERT INTO ...)”创建的所有数据,但是我的问题是,在我的实际目录中它存储我的数据?即使我通过我的heroku数据库的用户,密码,数据库等连接它也没有显示在我连接的heroku数据库上,但是它存储在某个地方。

我在index.js中的代码

var pg = require('pg');

var client = new pg.Client({
    user: "herokudatabaseusername",
    password: "herokudatabasepassword",
    database: "herokudatabasebasename",
    port: 0000,
    host: "hostname",
    ssl: true
}); 
client.connect();

client.query('CREATE TABLE IF NOT EXISTS table(id integer, name varchar(64), description varchar(1024), type varchar(128), ...etc');
client.query('INSERT INTO table(id, name, description, type, ...etc) values($1, $2, $3, ...etc)', [ 1, 'someinfo', 'moreinfo', ...etc]);

var query = client.query('SELECT id, name, description, type, ...etc, FROM table ORDER BY name');
query.on('row', function (row, result) {
    result.addRow(row);
});
query.on('end', function (result) {
    console.log(JSON.stringify(result.rows, null, '    '));
    client.end();
});

我在终端上运行'node index.js'命令后的示例输出

[
    {
         "id": 1,
         "name": "...",
         "description": "...",
         "ect": "...",
         "ect": "...",
         ...
         ...
         ...
    },
    {
         "id": 1,
         "name": "...",
         "description": "...",
         "ect": "...",
         "ect": "...",
         ...
         ...
         ...
    }
]

所以看起来数据仍然存在,我只是不确定在哪里。

1 个答案:

答案 0 :(得分:0)

看起来您的代码执行查询。然后迭代结果,为每一行调用console.log

因此,您的应用程序看起来不像任何地方存储结果。它只记录它们?

如果你做了heroku logs --tail,你可能会看到他们飞过。

顺便说一下,如果你打算在文件系统上存储东西,请注意。文件系统为ephemeral。因此,如果要正确存储它,请使用支持服务(如数据库)。