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) }) }) });