NodeJs针对Express框架配置Mysql进行数据库操作

时间:2022-05-22 15:07:37

Express版本:4.14.1

说明:如下配置以express为例进行配置并进行测试,当然mysql中间件也可以在nodejs中单独使用。

参考:NodeJs的Mysql中间件Github地址

1、首先进行mysql中间件安装

npm install mysql --save

2、创建数据库连接模块db.js,存放于express框架model(自己创建的)文件夹下:

let mysql = require('mysql');
let db = {} //插入操作,注意使用异步返回查询结果
db.insert = function(connection, sql, paras, callback){
connection.query(sql, paras, function (error, results, fields) {
if (error) throw error;
callback(results.insertId);//返回插入的id
});
} //关闭数据库
db.close = function(connection){
//关闭连接
connection.end(function(err){
if(err){
return;
}else{
console.log('关闭连接');
}
});
} //获取数据库连接
db.connection = function(){
//数据库配置
let connection = mysql.createConnection({
host:'localhost',
user:'root',
password:'',
database:'tpanalysis',
port:3306
});
//数据库连接
connection.connect(function(err){
if(err){
console.log(err);
return;
}
});
return connection;
}
module.exports = db;

3、新建测试表project

NodeJs针对Express框架配置Mysql进行数据库操作

4、进行查询测试:

let express = require('express');
let router = express.Router();
let db = require('./db');
//插入测试
router.get('/dbtest',function(req, res){
let project = {project_name: 'test', create_time: '2017-03-28 14:09:29'};
let sqlString = 'INSERT INTO project SET ?';
let connection = db.connection();
db.insert(connection, sqlString, project, function(id){
console.log('inserted id is:' + id);
});
db.close(connection);
return;
});

函数执行注意使用异步调用,此例中如果不使用异步,可能还没获得插入的id,就已经提前执行下面的代码了。

5、用命令npm start启用express,调用http://localhost:3000/dbtest,在终端查看结果如下:

NodeJs针对Express框架配置Mysql进行数据库操作