sql >> Databasteknik >  >> RDS >> Mysql

node.js och mysql anslutningspool exporteras inte

Du exporterar en funktion, inte själva poolen. Dessutom accepterar inte getConnection någon återuppringning:

db.js borde vara ungefär så här:

var mySQL = require('mysql');
var pool  = mySQL.createPool({
    host: config.host,
    user: config.user,
    password: config.password,
    database: config.database
});
var getConnection = function (cb) {
    pool.getConnection(function (err, connection) {
        //if(err) throw err;
        //pass the error to the cb instead of throwing it
        if(err) {
          return cb(err);
        }
        cb(null, connection);
    });
};
module.exports = getConnection;

query.js borde vara ungefär så här:

var getConnection = require('./db');
getConnection(function (err, con) {
  if(err) { /* handle your error here */ }
  var userQuery = 'select * from user';
  console.log("con: " + con); //displays undefined
  con.query(userQuery,function(err,user){
  con.release();
});


  1. Hur gör man LEFT JOIN med fler än 2 bord?

  2. Olaglig blandning av sammanställningar (utf8_unicode_ci,IMPLICIT) och (utf8_general_ci,IMPLICIT) för operation '='

  3. Skäl att vara optimistisk om framtiden för Microsoft Access

  4. SUBDATE() vs DATE_SUB() i MySQL:Vad är skillnaden?