当前位置: 首页 > 工具软件 > OSN-Node.js > 使用案例 >

node mysql工具库_Node.js数据库连接池操作通用工具(MySQL模块)

钱京
2023-12-01

出处:OSN开源站点数据库通用工具类,OSN源代码地址,https://github.com/obullxl/osnode-site,百度云演示站点,http://obullxl.duapp.com

使用平台:Node.js

依赖的项目:OSN开源站点

/**

* 数据库模块

*/

var config = require("../config");

var options = {

'host': config.dbhost,

'port': config.port,

'user': config.user,

'password': config.password,

'database': config.db,

'charset': config.charset,

'connectionLimit': config.maxConnLimit,

'supportBigNumbers': true,

'bigNumberStrings': true

};

var mysql = require('mysql');

var pool = mysql.createPool(options);

/**

* 释放数据库连接

*/

exports.release = function(connection) {

connection.end(function(error) {

console.log('Connection closed');

});

};

/**

* 执行查询

*/

exports.execQuery = function(options) {

pool.getConnection(function(error, connection) {

if(error) {

console.log('DB-获取数据库连接异常!');

throw error;

}

/*

* connection.query('USE ' + config.db, function(error, results) { if(error) { console.log('DB-选择数据库异常!'); connection.end(); throw error; } });

*/

// 查询参数

var sql = options['sql'];

var args = options['args'];

var handler = options['handler'];

// 执行查询

if(!args) {

var query = connection.query(sql, function(error, results) {

if(error) {

console.log('DB-执行查询语句异常!');

throw error;

}

// 处理结果

handler(results);

});

console.log(query.sql);

} else {

var query = connection.query(sql, args, function(error, results) {

if(error) {

console.log('DB-执行查询语句异常!');

throw error;

}

// 处理结果

handler(results);

});

console.log(query.sql);

}

// 返回连接池

connection.release(function(error) {

if(error) {

console.log('DB-关闭数据库连接异常!');

throw error;

}

});

});

};

 类似资料: