码迷,mamicode.com
首页 > 数据库 > 详细

nodejs连接mysql实例

时间:2016-08-04 22:54:16      阅读:277      评论:0      收藏:0      [点我收藏+]

标签:

1、在工程目录下运行npm install mysql安装用于nodejs的mysql模块;

2、创建db.js模块用于连接mysql,同时定义query查询方法;

var mysql = require(‘mysql‘);

// 创建一个数据库连接池
var pool = mysql.createPool({
  connectionLimit: 50,
  host: ‘localhost‘,
  user: ‘admin‘,
  password: ‘123456‘,
  database: ‘rp-test‘
});

// SELECT * FROM users
// 让我们的方法支持两种模式
// 一种是只传入SQL语句和回调函数
// 一种是传入SQL语句、参数数据、回调函数

exports.query = function (sql, P, C) {
  var params = [];
  var callback;

  // 如果用户传入了两个参数,就是SQL和callback
  if (arguments.length == 2 && typeof arguments[1] == ‘function‘) {
    callback = P;
  } else if (arguments.length == 3 && Array.isArray(arguments[1]) && typeof arguments[2] == ‘function‘) {
    params = P;
    callback = C;
  } else {
    throw new Error(‘对不起,参数个数不匹配或者参数类型错误‘);
  }


  // 如果用户传入了三个参数,那么就是SQL和参数数组、回调函数


  // 从池子里面拿一个可以使用的连接
  pool.getConnection(function (err, connection) {
    // Use the connection
    connection.query(sql, params, function () {
      // 使用完毕之后,将该连接释放回连接池
      connection.release();
      callback.apply(null, arguments);
    });
  });
};

3、查询示例

var express = require(‘express‘);
var db = require(‘./db‘);
var router = express.Router();

router.get(‘/‘,function(req, res, next){
    db.query("select * from app",function(err,result){
         //console.log(result);
        res.send(JSON.stringify (result));
    });
});
module.exports=router;

 

nodejs连接mysql实例

标签:

原文地址:http://www.cnblogs.com/niejunchan/p/5738628.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!