使用node.js实现对mysql数据库的增删改查

1.在项目中操作数据库的步骤

1.安装操作 MySQL 数据库的第三方模块(mysql

2.通过 mysql 模块连接到 MySQL 数据库

3.通过 mysql 模块执行 SQL 语句

使用node.js实现对mysql数据库的增删改查_第1张图片

2.安装与配置 mysql 模块

2.1安装 mysql 模块

mysql 模块是托管于 npm 上的第三方模块。它提供了在 Node.js 项目中连接和操作 MySQL 数据库的能力。想要在项目中使用它,需要先运行如下命令,将 mysql 安装为项目的依赖包

npm i mysql

2.2配置 mysql 模块

在使用 mysql 模块操作 MySQL 数据库之前,必须先对 mysql模块进行必要的配置,主要的配置步骤如下

// 1. 导入 mysql 模块
var mysql  = require('mysql')

// 2. 建立与 mysql 数据库的连接
var db = mysql.createPool({
  host: '127.0.0.1',  // 数据库的 ip 地址
  user: 'root', // 登录数据库的账号
  password: 'root', // 登录数据库的密码2
  database: 'my_db_01' // 指定要操作哪个数据库
})

   3.测试 mysql 模块能否正常工作

1.调用 db.query() 函数,指定要执行的 SQL 语句,通过回调函数拿到执行的结果

2.以下是示例

//检测mysql模块能否正常工作
db.query("select 1" ,(err,data)=>{
if(err)  return console.log(err.message)
//只有能打印出[RowDataPacket{"1":1}]的结果,就证明数据库链接正常
console.log(data)
})

4.创建一个服务器启动文件然后安装对应的包

//安装express包
npm i express
//安装mysql包
npm i mysql

5.我们先要创建一个数据库中的表,再对表中的数据进行增删改查

 使用node.js实现对mysql数据库的增删改查_第2张图片

6.导入安装的包和一些配置项

//导入mysql
const mysql = require("mysql");
//导入express
const express = require("express");
//创建服务器实例
const app = express();
//配置解析表单数据的中间件
app.use(express.urlencoded({ extended: false }))
//配置数据库的相关信息
const db = mysql.createPool({
    host: '127.0.0.1',  // 数据库的 ip 地址
    user: 'root', // 登录数据库的账号
    password: 'root', // 登录数据库的密码
    database: "web67wxw2" //指定操作的数据库
})

 7.使用 select 语句查询数据

1.需求:查询 users 表中所有的数据

 2.案例代码

//查询数据
app.get("/books", (req, res) => {
    // 用db.query测试 mysql 模块能够正常运行
    db.query('select * from books', (err, data) => {
        // mysql 模块如果错误,err 中会返回错误信息
        if (err) return console.log(err.message)

        // 能够成功的执行 SQL 语句
        res.send({
            status: 0,
            message: "获取成功",
            data
        })
    })
})

8.使用 insert into 语句插入数据

1.需求: 向 users 表中新增数据

2.案例代码

//向数据库插入数据
app.post("/addbooks", (req, res) => {
    const data = req.body
    const sql = "insert into books set ?"
    // 用db.query测试 mysql 模块能够正常运行
    db.query(sql, data, (err, data) => {
        // mysql 模块如果错误,err 中会返回错误信息
        // console.log(data);
        if (err) return console.log(err.message)
        if (data.affectedRows !== 1) return console.log("数据插入失败");
        // 能够成功的执行 SQL 语句
        res.send({
            status: 0,
            message: "数据插入成功"
        })
    })
})

9.使用 update 语句更新数据

1.需求:更新表中的数据

2.案例代码

        

//向数据库更新数据
app.post("/updatebooks", (req, res) => {
    const data = req.body;
    // return console.log(data);
    //定义更新的sql模板
    const sql = "update books set ?  where id = ?"
    //启动sql
    db.query(sql, [data, data.id], (err, data) => {
        if (err) return console.log(err.message);
        if (data.affectedRows !== 1) return console.log("更新失败");
        res.send({
            status: 0,
            messge: "更新成功"
        })
    })
})

10.使用 delete 语句删除数据

1.在删除数据时,推荐根据 id 这样的唯一标识,来删除对应的数据

 2.注意:如果 sql 语句中有多个占位符,则必须使用数据为每个占位符指定具体的值,如果 sql 语句中只有一个占位符,则可以省略

3.案例代码

//删除数据库数据
//删除id为10的那条数据
const sql = "delete from books where id = ?"
db.query(sql, 10, (err, data) => {
    if (err) return console.log(err.message);
    //注意:执行delete语句之后,结果也是一个对象,也有affectedRows属性  
    if (data.affectedRows === 1) return console.log("删除数据成功");
})

以上就是 使用node.js实现对mysql数据库的增删改查的所有内容了,我写的代码均为案例代码,仅供参考,你们可以根据实际情况做一些修改。

你可能感兴趣的:(mysql,big,data,数据库)