"use strict"; var log = require('../util/log'); /** * 数据库查询工具,使用数据库连接池获取连接,执行查询,之后将连接返回连接池。 */ exports.execQuery = function (pool, options) { pool.getConnection(function (err, connection) { // 查询参数 var sql = options['sql']; var args = options['args']; var handler = options['handler']; if (err) { log.error('db-getConnection err:' + err); handler(err, 'db-getConnection'); return; } // 执行查询 if (!args) { var query = connection.query(sql, function (err, results) { if (err) { log.error('db-query err:' + err); handler(err, results); return; } // 处理结果 handler(err, results); }); } else { var query = connection.query(sql, args, function (err, results) { if (err) { log.error('db-query err:' + err); handler(err, results); return; } // 处理结果 handler(err, results); }); } // 返回连接池 connection.release(function (err) { if (error) { log.error('db-release err:' + err); } }); }); };