2014-12-31 19 views
0

節點,MySQL的pool.getConnection看起來是這樣的:任何錯我如何使用node-mysql的pool.getConnection?使用時

pool.getConnection(function(err, callback) { 
    callback(err, connection); 
}); 

與exports.getConnection用來當你輸入了:

var db = require('mysql'); 
var id = req.params.id; 

db.getConnection(function(err, connection){ 
    if(err) throw err; 
    connection.query('SELECT * FROM users WHERE id = ?', [id], function(err, data) { 
     connection.release(); 
     if (err) throw err; 
     res.send(data); 
    });  
}); 

我決定抽象了這一點,在MySQL文件I補充:

exports.select = function(select, inserts, callback) { 
    pool.getConnection(function(err, connection) { 
     if (err) callback(err); 
     connection.query(select, inserts, function(err, response){ 
      connection.release(); 
      callback(err, response); 
     }); 
    } 
} 

這樣,當我想要做一個查詢I型:

db.select('SELECT * FROM users WHERE uid = ?', [id], function(err, data) { 
    if (err) throw err; 
    res.send(data); 
}); 

我已經測試過插入和不同查詢。我想知道的是,如果有什麼危險的錯誤,我錯過了。

+0

已經有類似的內置功能:https://github.com/felixge/node-mysql/blob/master/lib/Pool.js#L171 –

+0

對。那麼至少這是好習慣。 –

回答

0

在Andrey Sidorov的評論之後,我將此標記爲已回答,不僅因爲這是可以的,而且因爲已經內置了功能,所以甚至沒有必要。謝謝。

相關問題