Node Mysql操作封裝
阿新 • • 發佈:2018-12-03
由於最近要寫個簽到系統,頻繁的操作mysql導致程式碼量暴漲,就想著優化下SQL的結構,減少工作量。
'use strict'; var mysql = require('mysql'); // 資料庫配置 module.exports = { /** * 資料庫配置 */ config: { host: 'localhost', port: 3306, database: 'database', user: 'root', password: 'root' }, conn: null, /** * 建立連線池並連線 * @param callback */ openConn: function (callback) { var me = this; me.conn = mysql.createConnection(me.config); }, /** * 釋放連線池 * @param conn */ closeConn: function () { var me = this; me.conn.end(function (err) { console.log(err); }); }, /** * 執行連線 * @param config */ exec: function (config) { const me = this; me.openConn(); me.conn.query(config.sql, config.params, function (err, res) { if (err) { console.log(err); } else if (config.callback) { config.callback(res); } // 關閉資料庫連線 me.closeConn(); }); } }; //test var mysqlHandler = require('mysqlHandler'); mysqlHandler.exec({ sql: 'select * from table where id = ?', params: [id], callback: function (r) { console.log(r); } });