我有一个文件,我写了以下代码:
var db_abc= express();
var mysql = require('mysql')
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'abc_db'
})
connection.connect(function (err) {
if (err) throw err
console.log('You are now connected...')
})
module.exports = db_abc;
现在我想在其他文件中使用连接来编写查询:
var db_abc = require('../db_abc')
db_abc.connection.query('SELECT tid, type, status, ' +
'created, modified, jdp_response FROM jdp_tb_trade ' +
'WHERE status="TRADE_FINISHED" AND type = "tmall_i18n" ' +
//'AND DATE_ADD(NOW(), INTERVAL ' + start + ' MINUTES) <= modified' +
// 'AND DATE_ADD(NOW(), INTERVAL ' + end + ' MINUTES) >= modified' +
'ORDER BY modified',
function (err, results) {
if (!err)
console.log('The solution is: ', results);
else
console.log('Error while performing Query.');
});
如果我在同一个文件中写上面的查询,我已经定义了连接,那么它就会成功执行。但是当我使用db_abc模块并导入它并使用连接变量来调用查询时,它表示查询未定义。
有关如何在快递中使用其他模块的变量的任何建议将不胜感激。
答案 0 :(得分:1)
您正在导出db_abc
这是一个express
应用程序。 Express没有connection
变量。
我认为您想要做类似
的事情var db_abc= express();
var mysql = require('mysql')
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: '',
database: 'abc_db'
})
connection.connect(function (err) {
if (err) throw err
console.log('You are now connected...')
})
module.exports = {
connection, // Export connection here
};
然后你可以像这样使用它
var db_abc = require('../db_abc')
db_abc.connection...