02——开发博客之数据存储01

    科技2026-08-16  10

    1.Node.js 操作 Mysql(Demo) 2.在项目中实现Mysql 连接

    1.Node.js 操作 Mysql(Demo)

    示例:用demo 演示,不考虑使用封装: 将其封装为系统可用的工具使用: 让API直接操作数据库,不再使用假数据 npm i mysql

    index.js

    const mysql = require('mysql') // 创建连接对象 const con = mysql.createConnection({ host: 'localhost', user: 'root', password: '123456', port: '3306', database: 'myblog' }) // 开始连接 con.connect() // 执行 sql 语句 const sql = 'select * from users;' con.query(sql, (err, result) => { if (err) { console.log(err) return } console.log(result) }) // 关闭连接 con.end()

    控制台输出

    [nodemon] starting `node index.js` [ RowDataPacket { id: 1, username: 'zhangsan', password: '123', realname: '张三' }, RowDataPacket { id: 2, username: 'lisi', password: '123', realname: '李四2' } ] [nodemon] clean exit - waiting for changes before restart

    2.在项目中实现Mysql 连接

    文件目录 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201009224115207.png#pic_center)

    conf/db.js

    const env = process.env.NODE_ENV //环境变量(package.json中已定义) // 配置 let MYSQL_CONF if (env === 'dev') { MYSQL_CONF = { host: 'localhost', user: 'root', password: '123456', port: '3306', database: 'myblog' } } // 线上环境配置 if (env === 'production') { MYSQL_CONF = { host: 'localhost', user: 'root', password: '123456', port: '3306', database: 'myblog' } } module.exports = { MYSQL_CONF } 通过获取package.json中配置的环境变量区分开发还是生产环境把配置文件导出

    db/mysql.js

    const mysql = require('mysql') const { MYSQL_CONF} = require('../conf/db') // 创建连接对象 const con = mysql.createConnection(MYSQL_CONF) // 开始连接 con.connect() // 统一执行 sql 的函数 function exec(sql) { const promise = new Promise((resolve, reject) => { con.query(sql, (err, result) => { if (err) { reject(err) return } resolve(result) }) }) return promise } module.exports = { exec } 以conf/db.js中MYSQL_CONF作为参数创建连接对象新建统一执行sql函数,通过promise包裹con.query实现。
    Processed: 0.009, SQL: 9