Node.js/Postgresql数据库连接返回未定义的

Node.js/Postgresql数据库连接返回未定义的,node.js,postgresql,express,heroku-postgres,Node.js,Postgresql,Express,Heroku Postgres,我在Heroku上有一个PostgreSQL数据库。以下是我连接到它的方式: //sql_conn.js const pgp = require('pg-promise')(); pgp.pg.defaults.ssl = true; const db = pgp('postgres://connection_string_redacted'); if(!db) { console.log("Database setup unsuccessful."); process.ex

我在Heroku上有一个PostgreSQL数据库。以下是我连接到它的方式:

//sql_conn.js
const pgp = require('pg-promise')();
pgp.pg.defaults.ssl = true;

const db = pgp('postgres://connection_string_redacted');

if(!db) {
    console.log("Database setup unsuccessful.");
    process.exit(1);
}

module.exports = db;
我尝试在这里访问它:

//test-endpoint.js
const express = require('express');
const app = express();
const router = express.Router();
let db = require('../utils/sql_conn').db;
const bp = require('body-parser');
router.use(bp.json());

router.get("/", (req, res) => {
    let query = "SELECT * FROM table;";
    db.manyOrNone(query)
        .then((rows) => {
            res.send({
                success: true,
                result: rows
            })
        }).catch((err) => {
            res.send({
                success: false,
                error: err
            })
        });
});

module.exports = router;
我已经验证了连接字符串是否正确,数据库是否位于Heroku上,require语句的路径是否正确,但是从浏览器调用test-endpoint.js返回:

TypeError: Cannot read property 'manyOrNone' of undefined

为什么数据库未定义?

看起来像是导入/导出问题。尝试替换此行:

let db = require('../utils/sql_conn').db;


如果(!db){在您的代码中没有任何作用,那么您应该会很好。

。请参阅。这似乎就是问题所在。非常感谢!
const db = require('../utils/sql_conn');