如何使用javascript连接mysq并使用各种操作,这里记录一下在node环境中mysql的封装和使用。
1、初始化一个项目
npm init
2、安装express
npm install express
3、在当前目录下新建app.js,内容如下:
const express = require('express')
const app = express()
const port = 3000
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
4、安装mysql
npm install mysql
5、db.js
const mysql = require("mysql")
const config = {
host:'127.0.0.1', //数据库的ip地址
user:'root', //登录数据库的账号
password:'', //登录数据库的密码
database:'blog' //指定要操作的数据库
}
module.exports = {
query: (sql, params) => {
//建立与MySQL数据库的连接
const connection = mysql.createConnection(config)
return new Promise((resolve, reject) => {
connection.connect(function(connErr) {
if (!connErr) {
//开始数据操作
connection.query(sql, params, (err, results) => {
if(!err){
resolve(JSON.parse(JSON.stringify(results)))
}else{
reject(err)
}
//中止连接数据库
connection.end((endErr) => {
if(endErr){
console.error(endErr)
}
})
})
} else {
reject(connErr)
//中止连接数据库
connection.end((endErr) => {
if(endErr){
console.error(endErr)
}
})
}
})
})
}
}
6、使用方式
const express = require('express')
const db = require("./db")
const app = express()
const port = 3000
app.get('/', (req, res) => {
;(async () => {
let results = await db.query("select * from student",[])
console.log(results)
})()
db.query("select * from student where name like ?",["%张三%"]).then(results => {
console.log(results)
res.send(JSON.stringify(results))
}).catch(err => {
res.send(JSON.stringify(err))
})
db.query("select * from student where ?",{id: 1, name: "张三"}).then(results => {
console.log(results)
res.send(JSON.stringify(results))
}).catch(err => {
res.send(JSON.stringify(err))
})
db.query("insert into student (name,sex,classes) values (?,?,?)",["李四",0,"六年级一班"]).then(results => {
console.log(results)
res.send(JSON.stringify(results))
}).catch(err => {
res.send(JSON.stringify(err))
})
db.query("update student set classes=? where id=?",["六年级二班",2]).then(results => {
console.log(results)
res.send(JSON.stringify(results))
}).catch(err => {
res.send(JSON.stringify(err))
})
})
app.listen(port, () => {
console.log(`Example app listening on port ${port}`)
})
7、启动
node app.js