65 Nodejs连接并操作MySQL

MySQL

nodejs 中使用 SQL 语句实现对 MySQL 数据库的增删改查。

// 导入 mysql 模块
cosnt mysql = require('mysql')

// 建立与数据库的链接关系
cosnt db = mysql.createPool({
    // ip 地址
    host: '127.0.0.1',
    // 用户名
    user: 'root',
    // 密码
    password: 'root',
    // 数据库名称
    database: 'test'
})

添加数据

因为增、删、改操作成功后返回的是一个对象,所以在打印时可以判断一下 affectedRows 是否为 1

// 添加数据
const user1 = { username: 'aaa', password: 'AAA' }
const sqlStr1 = 'insert into test set ?'
db.query(sqlStr1, user1, (err, res) => {
    if (err) return console.log(err.message)
    if (res.affectedRows === 1) console.log('添加成功!')
})

删除数据

// 删除数据
const sqlStr2= 'delete from test where id=?'
db.query(sqlStr2, 2, (err, res) => {
    if (err) return console.log(err.message)
    if (res.affectedRows === 1) console.log('删除成功!')
})

但是由于删除操作数据会直接消失,如果是用户的误操作,很难找回,所以一般会在用户设置一个 status 字段,来表示用户的和删除状态,使用 update 用户的 status 字段来实现用户的删除操作

修改数据

// 修改数据
const user3 = { id: 1, username: 'bbb', password: 'BBB' }
cosnt sqlStr3 = 'update test set ? where id=?'
db.query(sqlStr3, [user3, user3.id], (err, res) => {
    if (err) return console.log(err.message)
    if (res.affectedRows === 1) console.log('修改成功!')
})

查询数据

查询数据操作成功之后返回的是一个数组

// 查询数据
const sqlStr4 = 'select * from test'
db.query(sqlStr4, (err, res) => {
    if (err) return console.log(err.message)
    console.log(res)
})

你可能感兴趣的:(node.js,mysql)