nodeJs下操做數據庫須要安裝npm模塊: mysqlnode
npm install mysql --save-dev
新建express項目mysql
express --view=ejs
在項目根目錄下新建數據庫配置文件sql
const config = { host : '127.0.0.1', user : 'root', password : '123', port : 3306, database : 'blog' } module.exports = config
在app.js中引入mysql模塊以及配置文件數據庫
var mysql = require('mysql') var dbConfig = require('./db/config')
爲防止對數據庫的頻繁鏈接,比較好的方式是建立一個數據庫鏈接池,mysql模塊支持建立鏈接池express
將建立好的鏈接池保存在一個全局變量中npm
global.pool = mysql.createPool(dbConfig)
在目錄下utils下建立db.js,封裝操做數據庫的各類方法app
const query = function(sql, callback){ global.pool.getConnection(function(err,conn){ if(err){ callback(err,null,null); }else{ conn.query(sql,function(qerr,vals,fields){ //釋放鏈接 conn.release(); //事件驅動回調 callback(qerr,vals,fields); }); } }) } module.exports = { query : query }
接下來在其餘文件中就能夠直接調取這個方法進行增刪改查操做ui
例如:spa
router.get('/', function(req, res, next) { var sql = `select * from article` db.query(sql,function(qerr,vals,fields){ vals.forEach(item => { console.log(item.content) }) }) });