Express版本:4.14.1
說明:如下配置以express為例進行配置並進行測試,當然mysql中間件也可以在nodejs中單獨使用。
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
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,在終端查看結果如下: