Node+Express+MySql实现简单增删改查操作
首先要确保安装了 node.js
并且安装了 express
,在这里就不过多讲述了。若你的开发设备是 linux
,可参考如下:关于 node.js
安装可以查看 CentOS 7
上安装 Node.js
的 4 种方法(包含npm) ,express
安装可查看 NodeJs
框架 Express
的两种使用方式。
在 Express 项目中安装 mysql 模块
npm install mysql --save
1
新建链接配置文件,根目录新建文件夹 connect,并进入新建 index.js文件,用于链接数据库配置。
// 在 connect/index.js 文件中
//数据库链接配置
let mysql = require('mysql');
let connection = mysql.createConnection({
host: 'localhost', //数据库地址
user: 'root', //用户名
password: 'root', //用户密码
database: 'zll16230144_db' //数据库名称
});
// 链接 mysql 数据库
connection.connect((err, result) => {
if (err) {
console.log(err);
console.log("mysql 数据库连接失败!");
return;
}
console.log(result);
console.log("mysql 数据库连接成功!");
});
module.exports = connection;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
增删改查的简单使用
let express = require('express');
let router = express.Router();
let connection = require('../connect');
/*
动态获取参数
1、请求地址:http://localhost:3000/api/component/asdasdas
请求方法:/component/:id
获取参数:req.params.id
输出: asdasdas
2、请求地址:http://localhost:3000/api/component?id=asdasdas
请求方法:/component
获取参数:req.query.id
输出: asdasdas
*/
/*
根据题目匹配筛选内容
let page = "", count = 0;
if (req.query.pageNo && req.query.pageSize) {
page = ` order by id desc limit ${req.query.pageNo},${req.query.pageSize}`;
} else {
page = ` order by id desc`;
};
*/
//查询
router.get('/query', function (req, res) {
var sql = 'select * from student';
connection.query(sql, function (err, result) {
if (err) {
console.log('err:', err.message);
}
console.log(result);
res.status(200)
res.json(result)
});
});
//修改
router.get('/change', function (req, res) {
var SNO = req.query.SNO;
var SNAME = req.query.SNAME;
var SDEPT = req.query.SDEPT;
var sql = `update student set SNAME = '${SNAME}',SDEPT = '${SDEPT}' where SNO = '${SNO}'`;
connection.query(sql, function (err, result) {
if (err) {
console.log('err:', err.message);
}
console.log(result);
res.status(200);
res.json("修改成功")
});
})
//添加
router.get('/add', function (req, res) {
console.log(req.query)
var SNO = req.query.SNO;
var SNAME = req.query.SNAME;
var SDEPT = req.query.SDEPT;
var sql = `insert into student values ('${SNO}','${SNAME}','${SDEPT}')`;
connection.query(sql, function (err, result) {
if (err) {
console.log('err:', err.message);
}
console.log(result);
res.status(200);
res.json("添加成功")
});
})
//删除
router.get('/delete', function (req, res) {
console.log(req.query)
var SNO = req.query.SNO;
var sql = `delete from student where SNO='${SNO}'`;
connection.query(sql, function (err, result) {
if (err) {
console.log('err:', err.message);
}
console.log(result);
res.status(200)
res.json("删除成功")
});
})
// res.json({ result: true, code: 200 });
// res.json({ result: false, code: 500 });
// connection.end();
module.exports = router;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
上次更新: 2024/01/30, 00:35:17
- 01
- Node与GLIBC_2.27不兼容解决方案08-19
- 02
- Git清空本地文件跟踪缓存08-13