池getConnection未定义

时间:2017-03-08 09:31:29

标签: node.js database-connection undefined

问题是当我通过变量I尝试池连接时出现以下错误

TypeError: sourCon.sourceDBConnection.getConnection is not a function

但是如果我尝试正常连接就可以了。

代码如下:

文件。 ./db/source_db.js

module.exports =
{
    sourceDBConnection: function () {
        return mysql.createPool({
            connectionLimit : 10,
            host     : 'localhost',
            user     : 'root',
            password : '',
            database : 'testdb'
        });
    }
};

文件:app.js

app.get('/report-url', function (req, res) {

    corporateModel.DetailReport(dateTime(),request);

})

文件。 ./models/corporate.js

var sourCon = require("../common_config/source_db");

module.exports =
{

    DetailReport: function (dateTime,request,Q) {

        var whereTripQueryAppend = "";

        sourCon.sourceDBConnection.getConnection(function(err, finConnection) {

            /* Get the last inserted ID */
            finConnection.query("SELECT student_id FROM studen LIMIT 1", function (error, lastResults, fields) {
                /* some process here */
            })
        })
    })
}   

您知道为什么它适用于正常连接并且它不适用于池连接吗?此外,如果我在同一个文件中定义连接,它工作正常。 AS

文件。 ./models/corporate.js

var sourceDBConnection = mysql.createPool({
    connectionLimit : 10,
    host     : 'localhost',
    user     : 'root',
    password : '',
    database : 'testdb'
});

var sourCon = require("../common_config/source_db");

module.exports =
{

    DetailReport: function (dateTime,request,Q) {

        var whereTripQueryAppend = "";

        sourceDBConnection.getConnection(function(err, finConnection) {

            /* Get the last inserted ID */
            finConnection.query("SELECT student_id FROM studen LIMIT 1", function (error, lastResults, fields) {
                /* some process here */
            })
        })
    })
}   

0 个答案:

没有答案