zoukankan      html  css  js  c++  java
  • nodejs 封装mysql连接池

    写在前面的

    在nodejs后台代码中,我们总是会和数据库打交道
    然而,每次都要写数据库的配置以及连接和断开,不胜其烦
    我就封装了一个连接池模块,不足之处还请多多批评

    上代码

    一下是写在mysqls.js中的

    var db    = {};  
    var mysql = require('mysql');  
    var pool  = mysql.createPool({  
      connectionLimit : 10,  
      host            : 'localhost',  
      user            : 'root',  
      password        : 'root',  
      database        : 'bbs'  
    });  
    db.query = function(){  
      var sql,para,callback;
      if (arguments.length == 2) {
        sql = arguments[0];
        callback = arguments[1];
      } else {
        sql = arguments[0];
        para = arguments[1];
        callback = arguments[2];
      }
      if (!sql) {  
        callback();  
        return;  
      }
      if (!para) {
        para = [];
      }
      pool.query(sql, para, function(err, rows, fields) {  
        if (err) {  
          console.log(err);  
          callback(err, null);  
          return;  
        };
        callback(null, rows, fields);  
      });
    }  
    module.exports = db;
    
    如何使用

    引用模块之后,直接调用query接口即可

    var db = require('../lib/mysqls');
    	db.query('select * from bk',function (err, data, fields) {
    		if (err) {
    			throw err;
    		}
    		console.log(data);
    		res.render('admin/page/list', {data: data})
    	});
    	db.query('insert into bk(bkname,bkadmin) values(?,?)',[bkname,bkadmin],function (err, data, fields) {
    		if (err) {
    			throw err;
    		}
    		if (data.affectedRows == 1) {
    			res.send('新加板块成功!');
    		}
    	});
    

    大功告成!

  • 相关阅读:
    Nginx 高级配置
    nginx安装和优化配置
    location语法介绍
    iptables
    通过 loganalyzer 展示数据库中的系统日志
    ubuntu_server16.04详细安装步骤
    内存控制mmap的原型和使用方法
    C语言中open函数read函数lseek函数是如何使用的
    gdb调试工具的基本使用
    C语言如何制作静态库
  • 原文地址:https://www.cnblogs.com/theone67/p/6732813.html
Copyright © 2011-2022 走看看