无法连接到postgres数据库?
问题描述:
好的。我遵循Heroku https://devcenter.heroku.com/articles/getting-started-with-nodejs#provision-a-database上列出的所有方向,并试图完成最后一步 - 让我的页面打印出我刚刚配置了PostGres的数据库的内容。无法连接到postgres数据库?
这是Postgres的样子对我说:
Heroku的样品说来连接数据库是这样的:
app.get('/db', function (request, response) {
pg.connect(process.env.DATABASE_URL, function(err, client, done) {
client.query('SELECT * FROM test_table', function(err, result) {
done();
if (err)
{ console.error(err); response.send("Error " + err); }
else
{ response.render('pages/db', {results: result.rows}); }
});
});
});
但运行我的页面,这个时候我得到了表'test_table'不存在。
在此之后并在URL手动把数据库Trying to connect my node.js to Heroku PostgreSQL database. Following Heroku Postgres tutorial 我得到这个错误:ERR_CONNECTION_REFUSED
我不能对任何事情分贝的内容。我该怎么做呢?
可能的问题:我没有.env文件,也不知道如何配置一个。不知道这是否影响任何东西
答
我想你需要create a test_table
table。从bottom of the page you posted:
$ heroku pg:psql psql (9.5.2, server 9.6.2) SSL connection (cipher: DHE-RSA-AES256-SHA, bits: 256) Type "help" for help. => create table test_table (id integer, name text); CREATE TABLE => insert into test_table values (1, 'hello database'); INSERT 0 1 => \q
答
检查是否Postgres的期望通过PG-承诺或不执行区分大小写的查询(特别是表名)。
根据错误,nodejs能够与postgres建立连接。
我做到了,所有回来都很好。问题是在Postgres中它没有出现我有一个名为“test_table”的表,如果我在这里理解..现在终端说当我再次这样做“关系”test_table“已存在” – skyguy
我没有一个.env文件。这可能吗? – skyguy