nodejs实现的连接MySQL数据库功能示例
程序员文章站
2022-04-29 12:45:55
本文实例讲述了nodejs实现的连接mysql数据库功能。分享给大家供大家参考,具体如下:
1、在工程目录下运行npm install mysql安装用于nodejs的m...
本文实例讲述了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程序设计有所帮助。