nodeJs下操作数据库需要安装npm模块: mysql
npm install mysql --save-dev
新建express项目
express --view=ejs
在项目根目录下新建数据库配置文件
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模块支持创建连接池
将创建好的连接池保存在一个全局变量中
global.pool = mysql.createPool(dbConfig)
在目录下utils下创建db.js,封装操作数据库的各种方法
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
}
接下来在其他文件中就可以直接调取这个方法进行增删改查操作
例如:
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)
})
})
});