nodejs实现的连接MySQL数据库功能示例


Posted in NodeJs onJanuary 25, 2018

本文实例讲述了nodejs实现的连接MySQL数据库功能。分享给大家供大家参考,具体如下:

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程序设计有所帮助。

NodeJs 相关文章推荐
解析NodeJs的调试方法
Dec 11 NodeJs
nodejs+express实现文件上传下载管理网站
Mar 15 NodeJs
Nodejs中Express 常用中间件 body-parser 实现解析
May 22 NodeJs
Nodejs之TCP服务端与客户端聊天程序详解
Jul 07 NodeJs
nodejs实现简单的gulp打包
Dec 21 NodeJs
nodejs基础之常用工具模块util用法分析
Dec 26 NodeJs
nodejs实现日志读取、日志查找及日志刷新的方法分析
May 20 NodeJs
NodeJs 模仿SIP话机注册的方法
Jun 21 NodeJs
NodeJs 实现简单WebSocket即时通讯的示例代码
Aug 05 NodeJs
nodejs使用node-xlsx生成excel的方法示例
Aug 22 NodeJs
NodeJS配置CORS实现过程详解
Dec 02 NodeJs
NodeJS和浏览器中this关键字的不同之处
Mar 03 NodeJs
详解nodeJs文件系统(fs)与流(stream)
Jan 24 #NodeJs
nodejs 最新版安装npm 的使用详解
Jan 18 #NodeJs
使用npm安装最新版本nodejs
Jan 18 #NodeJs
nodejs结合socket.io实现websocket通信功能的方法
Jan 12 #NodeJs
nodejs结合Socket.IO实现的即时通讯功能详解
Jan 12 #NodeJs
nodejs基于WS模块实现WebSocket聊天功能的方法
Jan 12 #NodeJs
nodejs使用http模块发送get与post请求的方法示例
Jan 08 #NodeJs
You might like
php实现的Captcha验证码类实例
2014/09/22 PHP
PHP7下协程的实现方法详解
2017/12/17 PHP
javascript 同时在IE和FireFox获取KeyCode的代码
2010/02/07 Javascript
Easy.Ajax 部分源代码 支持文件上传功能, 兼容所有主流浏览器
2011/02/24 Javascript
推荐20家国外的脚本下载网站
2011/04/28 Javascript
javascript 实现简单的table排序及table操作练习
2012/12/28 Javascript
js 限制input只能输入数字、字母和汉字等等
2013/12/18 Javascript
JavaScript隐式类型转换
2016/03/15 Javascript
Bootstrap每天必学之级联下拉菜单
2016/03/27 Javascript
Bootstrap按钮下拉菜单组件详解
2016/05/10 Javascript
jQuery根据name属性进行查找的用法分析
2016/06/23 Javascript
js日期相关函数dateAdd,dateDiff,dateFormat等介绍
2016/09/24 Javascript
bootstrap模态框垂直居中效果
2016/12/03 Javascript
AngularJS实践之使用ng-repeat中$index的注意点
2016/12/22 Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
2017/01/18 Javascript
Vue.Draggable实现拖拽效果
2020/07/29 Javascript
关于webpack2和模块打包的新手指南(小结)
2017/08/07 Javascript
jqgrid实现简单的单行编辑功能
2017/09/30 Javascript
解决layui上传文件提示上传异常,实际文件已经上传成功的问题
2018/08/19 Javascript
解决Vue 项目打包后favicon无法正常显示的问题
2018/09/01 Javascript
node.js实现微信开发之获取用户授权
2019/03/18 Javascript
详解jenkins自动化部署vue
2019/05/14 Javascript
Vue中props的详解
2019/05/16 Javascript
[03:24][TI9纪实] Dota奶爸
2019/08/22 DOTA
python实现apahce网站日志分析示例
2014/04/02 Python
python递归实现快速排序
2018/08/18 Python
Python查找最长不包含重复字符的子字符串算法示例
2019/02/13 Python
记录Python脚本的运行日志的方法
2019/06/05 Python
python实现的汉诺塔算法示例
2019/10/23 Python
用OpenCV将视频分解成单帧图片,图片合成视频示例
2019/12/10 Python
Python3 filecmp模块测试比较文件原理解析
2020/03/23 Python
Python opencv相机标定实现原理及步骤详解
2020/04/09 Python
Python 炫技操作之合并字典的七种方法
2020/04/10 Python
Python实现寻找回文数字过程解析
2020/06/09 Python
Jo Malone美国官网:祖玛珑香水
2017/03/27 全球购物
送给他或她的礼物:FUN.com
2018/08/17 全球购物