note10.16

#一、Linux 文件权限管理:chmod
基本语法
bash
chmod 用户 增减权限 具体权限 文件名
用户类型说明
符号 含义
u 所有者(user)
g 组用户(group)
o 其他用户(others)
a 所有用户(all)
权限类型说明
符号 含义
r 读权限
w 写权限
x 执行权限
常用示例
为所有用户增加所有权限:

bash
chmod a+rwx test
为其他用户减少写、执行权限:

bash
chmod o-wx test
数字方式设置权限(755):

bash
chmod 755 test
755 表示:所有者拥有全部权限(rwx),组用户和其他用户拥有读与执行权限(r-x)。

#二、SQL 排序、分页与函数

  1. 排序:ORDER BY
    sql
    ORDER BY entrance_score ASC
    – ASC 升序(默认),DESC 降序
    多字段排序(靠前字段权重更大):

sql
ORDER BY scholarship DESC, entrance_score DESC
2. 分页:LIMIT
sql
LIMIT 3
– 返回结果中指定范围内的数据,一般置于语句末尾
组合使用——显示第一页的前三项:

sql
ORDER BY entrance_score DESC
LIMIT 0,3;
3. 常用函数
注意:函数写在 SELECT 中。

SUBSTRING —— 截取字段内容
sql
SELECT major, SUBSTRING(major,1,2) AS 专业简称
– substring(字段, 开始位置, 结束位置)
ROUND —— 四舍五入保留小数
sql
SELECT entrance_score, ROUND(entrance_score/12,2) AS 每月奖学金
– ROUND(数字, 保留小数位):为负数则四舍五入到整数位
YEAR / MONTH —— 提取日期部分
sql
SELECT student_name, birth_date,
YEAR(birth_date) AS 年份,
MONTH(birth_date) AS 月份
IF —— 条件判断
sql
SELECT student_id, student_name, scholarship,
IF(scholarship > 0,’有’,’无’) AS 奖学金有无
– IF(判断条件, 真值, 假值)
CASE —— 多条件分支(类似 switch)
sql
SELECT student_id, student_name, entrance_score,
CASE
WHEN entrance_score >= 500 THEN ‘优秀’
WHEN entrance_score >= 480 THEN ‘良好’
ELSE ‘继续努力’
END AS score_level
语法结构:

sql
CASE
WHEN 条件1 THEN ‘真值’
WHEN 条件2 THEN ‘真值’
ELSE 无符合条件值
END AS 表头名称
小结
主题 关键点
chmod 用户 + 增减 + 权限,支持符号与数字两种写法
ORDER BY 支持多字段排序,靠前字段优先级高
LIMIT 用于分页,常置于语句末尾
函数 写在 SELECT 中,可组合使用完成复杂逻辑
两份笔记分别覆盖了 Linux 权限管理与 SQL 查询进阶操作,适合作为日常速查参考。

note3.MySQL1

– 展示数据库
SHOW DATABASES;

– 创建数据库
CREATE DATABASE name;

– 无重命名库语句,需复制为新库的同时改名

– 建库集合,包含数据默认排列类型
CREATE DATABASE name
DEFAULT CHARACTER SET utf8mb4
COLLATE utf8mb4_general_ci;

– 一般情况默认为此,也可省略

DROP DATABASE name;
– 删除数据库

USE DATABASE name;
– 使用数据库,用于建表等操作的前置

SHOW TABLES;
– 展示数据表

CREATE TABLE department (
dept_id CHAR(4) PRIMARY KEY,
dept_name VARCHAR(30) NOT NULL
)

– 建表语句,包含两条示例字段

– 字段名 数据格式 PRIMARY KEY主键
– NOT NULL不可为空,NULL
– 提示:最末尾一个字段后勿写,

AFTER TABLE name ADD COLUMN 插入字段名 数据格式 是否可为空 AFTER 插入位置处的前一个字段名;
– 在已有的表中插入新字段

DROP TABLE name;
– 删除数据库

DESC name;
– 展示数据表内的字段

INSERT INTO department (dept_id, dept_name) VALUES
(‘D001’, ‘软件技术’),
(‘D002’, ‘大数据技术’),
(‘D003’, ‘计算机网络’),
(‘D004’, ‘人工智能技术’),
(‘D005’, ‘数字媒体技术’);

– 插入数据,严格按照格式
– 对象1( “字段1” ,”字段2” ),
– 对象2( “字段1” ,”字段2” ),
– 对象3( “字段1” ,”字段2” ),

–基本查询

– 万用开头,显示要展示的内容,例:查询未设置电话号码的学生姓名,在此处(select)写入name,在where写入phonenumber
SELECT student_name FROM student3

– -数值比较
WHERE entrance_score >= 480
– 文本比较
WHERE major = “软件技术”
– 文本比较-反向
WHERE not major = “软件技术”
– OR或,查询OR两侧的值,任一满足即可
WHERE major = “软件技术”
OR major = “计算机网络”
– AND与,查询AND两侧的值,必须同时满足条件
WHERE major = “软件技术”
AND entrance_score > 480
– IN列出(字段名)内的字段
WHERE major IN (“软件技术”,”计算机网络”)
– BETWEEN列出between .. and .. 范围中符合的值
WHERE scholarship BETWEEN 450 AND 500
– LIKE模糊查询包含%的内容
WHERE student_name LIKE ‘%宁%’
– LIKE模糊查询,_为任意字符内容,适用于查询已知长度及部分内容
WHERE student_name LIKE ‘_敏’
– is null查询空值
WHERE phone IS NULL
– is not null查询非空值
WHERE phone IS NOT NULL

note2_test

这个规划非常合理,完美适配「考研优先 + 就业保底」

一句话概括方案:
网页、鸿蒙暂停投入;Python、MySQL 保持浅度把玩,不作为主线;主线深耕 C,同步推进单片机 + Linux。

✔ 优点

  1. 主线技能双向收益(考研 + 求职通用)
    • C 语言:考研机试、嵌入式复试、开发岗面试的核心。
    • 单片机:复试项目核心素材;落榜求职嵌入式 / 物联网直接能用。
    • Linux(偏嵌入式方向):对应考研专业课《操作系统》,同时是嵌入式 Linux 岗位基础。
  2. 砍掉低性价比分支,精力集中
    网页、鸿蒙属于上层应用,考研不考,对你当前阶段增益很小,暂时搁置完全没问题,后续想用随时捡。
  3. Python、MySQL 定位清晰:学着玩,不深耕
    可以用来写项目辅助脚本、简单数据存储,服务你的单片机 - Linux 项目;不花大量时间学 Web 框架、爬虫、数据分析,避免占用备考时间。

📌 主线学习顺序建议(推荐)

优先夯实 C,再单片机,然后切入 Linux,三者互相支撑

  1. 第一阶段:深挖 C 语言(最高优先级)
    重点攻克:指针、结构体、联合体、位运算、内存管理、函数指针。
    配套练习:基础数据结构(链表、栈、队列、排序查找)

好处:同时搞定考研专业课 + 复试机试 + 嵌入式底层编程基础,一石三鸟。
2. 第二阶段:单片机(STM32,在你 51 基础上升级)
不用贪多外设。优先:GPIO、串口、定时器、中断;做传感器采集项目。
目标:产出可演示的硬件项目,作为复试 / 求职作品集。
3. 第三阶段:Linux(从 Ubuntu 基础 → Linux 下 C 编程)
先吃透 Shell、vim、Makefile、gcc;
再学:进程、线程、IO、Socket 网络编程(C 语言)。

重点是Linux 下的 C 开发,不是网络设备配置(eNSP 那种交换机配置放次要)

🟢 Python & MySQL(“学着玩” 的边界,把握好)

  • Python:只保留基础语法、pyserial 串口、简单 socket 脚本。用来做上位机接收单片机数据。
  • MySQL:掌握基础增删改查、简单建表。用于项目:把硬件采集的数据存入数据库。

定位:为你的单片机 + Linux 项目做配套小模块,不单独花几周专门学。

⏱ 时间配比参考(每周)

假设每周可用自学 20h:

  • C 语言 + 数据结构:10h(核心,考研 + 开发)
  • 单片机实践:5h
  • Linux 基础:3h
  • Python+MySQL:2h(随便玩玩,做项目配套)
    网页、鸿蒙:0h,暂停

⚠ 两个避坑提醒

  1. 不要单片机陷太深:不要沉迷各种花哨外设、硬件 DIY。你的目标是项目演示 + 理解底层原理,不是硬件工程师。
  2. Linux 不要跑偏:不要变成单纯学运维、搭各种服务。你的主线目标是在 Linux 上写 C 程序。

后续可落地项目(串起全部主线)

STM32 采集温湿度 → 串口 / WIFI 上传 → Linux 服务端(C 语言 Socket 接收) → 存入 MySQL,Python 脚本辅助查看数据。
这个项目没有网页、鸿蒙,完全基于你选定的主线,复试面试非常合适,考研失利求职嵌入式也能直接放简历。

如果你需要,我可以给你 C 语言深入的练习清单,或者 STM32 入门的学习路线。