#Java篇:学习node后端之sql常用操作

发布于:2025-06-06 ⋅ 阅读:(21) ⋅ 点赞:(0)

学习路线

1、javascript基础;

2、nodejs核心模块
fs: 文件系统操作
path: 路径处理
http / https: 创建服务器或发起请求
events: 事件机制(EventEmitter)
stream: 流式数据处理
buffer: 处理二进制数据
os: 获取操作系统信息
util: 工具方法(如 promisify)

3、express框架入口
路由定义(GET、POST 等)—ok
```js
// app.js里面
const loginRouter =require(‘./router/login’)
app.use(‘/api’,loginRouter)

	// router文件夹下 login.js里面
	const express = require('express')
	const router = express.Router()
	//导入处理模块
	const loginHasndler = require('./router_handle/login.js')
	// 路由表
	router.post('/returnMenuList',loginHasndler.returnMenuList)
	module.exports = router
	
	// 这个里面读取数据库 router_handle/login.js
	const db = require('../../db/index.js')
	exports.returnMenuList = (req, res) => {
	const sql = 'select identity from users where id = ?'
	db.query(sql, req.body.id, (err, result) => {
	console.log('result: ', result);
	if (err) return res.cc(err)
	let menu = []
	if (result[0].identity == "超级管理员") {
		menu = superAdminRouter
	}
	if (result[0].identity == "管理员") {
		menu = superAdminRouter
	}
	res.send(menu)
})

}

	// 调用示例url
	http://localhost:9090/api/returnMenuList
```

中间件(应用级、错误处理)
请求与响应对象(req, res)—ok
静态资源托管(express.static)
使用 body-parser 解析请求体 —ok
使用 cors 解决跨域问题 —ok

4、身份验证与安全
Session/Cookie
JWT(JSON Web Token)
Passport.js(第三方登录)

5、数据库操作

sql操作
```js
// 增加 这条 SQL 语句的作用是 将一个 JavaScript 对象直接插入到数据库的 users 表中,并且字段和值会自动匹配。
insert into users set ?

// 删除 这条 SQL 语句的作用是 删除 logs_login 表中的所有记录。
DELETE FROM logs_login

// 修改1 更新 product 表中某一条记录的多个字段内容,条件是这条记录的 product_id 等于指定的值。
UPDATE product SET ? WHERE product_id = ?

// 修改2 这条 SQL 语句的作用是 将 product 表中某条记录的 product_status 字段值更新为 300,根据指定的 product_id 条件。
UPDATE product SET product_status = 300 WHERE product_id = ?

// 查找1 这个 ? 是一个 占位符(placeholder),用于在执行 SQL 查询时 动态传入参数值。
SELECT * FROM users WHERE account = ? 

// 查找2 如果数据库中 id=1 的用户身份是 "超级管理员",则接口会返回所有配置好的菜单路由
SELECT identity FROM users WHERE id = 1

// 查找3 这条 SQL 查询语句的作用是从 logs_login 表中 查询所有字段的所有记录,并按照 operating_time 字段进行 降序排序。
select * from logs_login ORDER BY operating_time DESC
```

```js
WHERE name LIKE ‘Da%’	查找以Da开头的名字	David, Davidson
WHERE name LIKE ‘%th’	查找以th结尾的名字	查找以th结尾的名字 Elizabeth, Smith
WHERE name LIKE ‘%on%’	查找包含on的名字	Davidson, Toni
WHERE name LIKE ‘Sa_’	查找以Sa开头且最多后跟一个字符的名字	Sa
WHERE name LIKE ‘_oy’	查找以oy结尾且最多包含一个字符的名字	Joy, Roy
WHERE name LIKE ‘an’	查找包含an的名字,并以一个字符开头和结尾	Dana, Hans
WHERE name LIKE ‘%ar_’	查找包含ar的名字,该名字以任意数量的字符开头,并以最多一个字符结尾	Richard, Karl
WHERE name LIKE ‘_ar%’	查找包含ar的名字,最多以一个字符开头,以任意数量的字符结尾	Karl, Mariya
	```
引用

https://blog.csdn.net/m0_55519586/article/details/122456348