2013-02-26 21 views
0

我想知道如何在Node.js中正確使用模塊node-mysql(使用Express.js)。我有這樣的主路由器:如何使用Express.js正確使用node-mysql?

var Post = require('./models/post.js');  

app.get('/archives', function (req, res) { 
    Post.findArchives(function(posts, err) { 
     if(err) 
      res.send('404 Not found', 404); 
     else 
      res.render('archives', { posts: posts}); 
    }); 
}); 

而這裏的文件post.js的內容:

var mysql = require('mysql'); 
var dbURL = 'mysql://[email protected]/mydatabase'; 

exports.findArchives = function(callback) { 
    var connection = mysql.createConnection(dbURL); 
    connection.query('SELECT * FROM blog_posts_view WHERE status != 0 ORDER BY date DESC', function(err, rows) { 
     if(err) throw err 
     callback(rows, err); 
     connection.end(); 
    }); 
}; 

我怎麼能提高呢?改進錯誤處理?此外,他們的Github上有handleDisconnect(connection);函數(https://github.com/felixge/node-mysql),我不確定如何進行集成以確保應用程序在數據庫沒有響應時不會崩潰。

謝謝!

回答

1

查看mysql-simple庫。它將node-mysql與一個池庫結合起來以創建一個連接池,並且還包含處理斷開連接的代碼。

如果您想讓它變得非常簡單,那麼您可以使用該模塊。