~ Express 数据库集成
添加将数据库连接到 Express 应用程序的功能,只需要为应用程序中的数据库加载适当的 Node.js 驱动程序。
So,如何在 Express 应用程序中为数据库系统(如,MySQL、MongoDB)添加和使用一些最流行的Node.js模块?
准备工作:MySQL 5.7
host:'localhost', user:'root', password:'123456', database:'webpiece_db'特别说明:链接 mysql 数据库之前需要去 npm 安装 msyql 模块,mysql 模块支持 mysql 5.7+ 的数据库
npm install mysql --save
Node.js 连接 MySQL
Node.js 中,连接 MySQL 数据库,一般有两种方式:
[1] 简单连接
[2] pool 连接池
数据库连接池,负责分配、管理和释放数据库连接,
它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个,能明显提高对数据库操作的性能。
使用 express 连接 MySQL
npm install express --save npm install mysql --save// app.js const express = require('express'); const app = express(); const mysql = require('mysql'); let pool = mysql.createPool({ // 创建一个连接池 host:'localhost', user:'root', password:'123456', database:'webpiece_db' }); let sql = 'select uname from users' app.get('/about',function(req,res){ // 请求:http://localhost:3000/about pool.getConnection(function(err,db){ // 将一个数据库连接加入到连接池 if(err){ console.error(err); }else{ db.query(sql,function(err,rows,field){ if(err){ console.error(err) }else{ // console.log(rows); // rows 值如下: // [ // RowDataPacket { uname: 'lynn' }, // RowDataPacket { uname: 'adrian' }, // RowDataPacket { uname: 'tom' } // ] res.send(rows); } db.release(); // 释放连接池中的数据库连接 // pool.end(); }); } }) }) app.listen(3000,function(){ console.log('服务启动中...'); })

