Skip to content

Instantly share code, notes, and snippets.

@swiftcafex
Created December 1, 2017 12:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save swiftcafex/8ff2c9dd8534247ff9c247cc98e52e83 to your computer and use it in GitHub Desktop.
Save swiftcafex/8ff2c9dd8534247ff9c247cc98e52e83 to your computer and use it in GitHub Desktop.
node mysql 使用例子
var mysql = require('mysql');
var fs = require("fs");
function DBHelper() {
var env = process.env.NODE_ENV || "dev";
if(env == "production") env = "prod";
var data = fs.readFileSync("./database.json", "utf8");
var json = JSON.parse(data);
var config = json[env];
var database = config["database"];
var user = config["user"];
var pwd = config["password"];
var host = config["host"];
this.pool = mysql.createPool({
connectionLimit : 10,
host : host,
user : user,
password : pwd,
database : database
});
}
DBHelper.prototype.query = function(sql, params, callback) {
if(this.pool) {
this.pool.getConnection(function(err, connection){
if(err) {
console.log(err);
callback(err);
} else {
if(typeof params === "function") {
connection.query(sql, function(err, rows){
params(err, rows);
connection.release();
});
} else {
connection.query(sql, params, function(err, rows){
callback(err, rows);
connection.release();
});
}
}
});
}
};
module.exports = new DBHelper();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment