2012年12月6日 星期四

MySQL v2.x connector for Node.js

Node.js連線MySQL部分,目前我常用的是mysql這個module
可透過npm install mysql取用...

而最近2.x版本釋出後,發現連線方式有修改了:

var db_options = { 
    host: 'your.database.ip.address',
    port: 3306,
    user: 'username',
    password: 'password',
    database: 'db_name'
};

/* mysql@2.0.0-alpha4連線設定 */
var mysql = require('mysql')


exports.db = mysql.createConnection(db_options);       

如果專案中不確定會用到哪個版本時候
可以這樣寫:

if ( mysql.createClient ) { //v0.9.x
  db = mysql.createClient(db_options);
} else if ( mysql.createConnection ){ //v2.x
  db = mysql.createConnection(db_options);
} else { //more early
  db = new mysql.Client(db_options);
  db.connect(function(err) {
      if ( err ) {
          console.error('connect db ' + db.host + ' error: ' + err);
          process.exit();
      }
  });
}