设计一个学生管理系统的数据库

1. 需求分析

一个基础的学生管理系统通常需要管理以下核心信息:

  • 学生信息:学号、姓名、性别、出生日期、联系方式、所属班级等。
  • 教师信息:工号、姓名、性别、职称、所属院系、联系方式等。
  • 课程信息:课程号、课程名、学分、课程描述等。
  • 班级信息:班级编号、班级名称、所属专业、入学年份等。
  • 院系信息:院系编号、院系名称、负责人等。
  • 选课与成绩:学生选修了哪些课程,以及对应的成绩。
  • 授课关系:哪位教师教授哪门课程,在哪个学期。

2. 数据库概念模型

我们可以用实体-关系模型来描述,核心实体和关系如下:

  • 实体学生教师课程班级院系
  • 关系
    • 学生 属于 一个班级 (N:1)
    • 班级 属于 一个院系 (N:1)
    • 教师 属于 一个院系 (N:1)
    • 学生 选修 课程 (N:M),并产生"成绩"属性。
    • 教师 教授 课程 (N:M),并关联"学期"属性。

3. 物理数据库设计(SQL表结构)

以下是基于MySQL语法的建表SQL语句,包含了必要的约束(主键、外键、非空、唯一性等)。

sql 复制代码
-- 1. 院系表
CREATE TABLE departments (
    department_id INT AUTO_INCREMENT PRIMARY KEY, -- 院系ID,主键
    department_name VARCHAR(50) NOT NULL UNIQUE,  -- 院系名称
    department_head VARCHAR(20),                  -- 系主任姓名
    office_location VARCHAR(100)                  -- 办公室地址
);

-- 为院系表插入50条数据
INSERT INTO departments (department_name, department_head, office_location) VALUES
('计算机科学与技术学院', '张明', '第一教学楼A座301'),
('电子信息工程学院', '李伟', '第二教学楼B座201'),
('机械工程学院', '王强', '工程训练中心101'),
('土木建筑工程学院', '赵刚', '土木馆205'),
('材料科学与工程学院', '刘洋', '材料楼308'),
('化学化工学院', '陈华', '化学实验楼102'),
('数学科学学院', '杨帆', '理科楼401'),
('物理学院', '周涛', '物理实验楼209'),
('生命科学学院', '吴昊', '生物楼315'),
('经济管理学院', '孙丽', '经管楼106'),
('法学院', '郑洁', '法学楼208'),
('文学院', '王芳', '人文楼312'),
('外国语学院', '李静', '外语楼104'),
('历史学院', '刘伟', '历史楼207'),
('哲学学院', '张磊', '哲学楼109'),
('艺术学院', '陈雪', '艺术楼503'),
('音乐学院', '杨阳', '音乐厅301'),
('体育学院', '赵勇', '体育馆208'),
('医学院', '王鹏', '医学部大楼405'),
('药学院', '李娜', '药学楼212'),
('护理学院', '刘敏', '护理楼115'),
('公共卫生学院', '张健', '公卫楼308'),
('农学院', '陈亮', '农学楼201'),
('林学院', '杨林', '林学楼409'),
('动物科学学院', '王磊', '动科楼305'),
('食品科学与工程学院', '李红', '食品楼112'),
('环境科学与工程学院', '刘涛', '环境楼214'),
('海洋学院', '张海', '海洋楼317'),
('地球科学学院', '陈山', '地学楼203'),
('天文与空间科学学院', '杨星', '天文台101'),
('心理学系', '王心', '心理楼108'),
('新闻与传播学院', '李媒', '传媒楼306'),
('教育学院', '刘教', '教育楼209'),
('国际关系学院', '张国', '国关楼412'),
('社会学系', '陈社', '社会学楼115'),
('人类学系', '杨人', '人类学楼208'),
('政治学与公共管理学院', '王政', '政管楼304'),
('马克思主义学院', '李马', '马院楼107'),
('软件学院', '刘软', '软件楼510'),
('网络空间安全学院', '张安', '网安楼313'),
('人工智能学院', '陈智', '智能楼416'),
('数据科学学院', '杨数', '数据楼219'),
('机器人工程学院', '王机', '机器人楼322'),
('智能制造学院', '李智', '智造楼225'),
('新能源科学与工程学院', '刘新', '能源楼128'),
('航空航天学院', '张航', '航天楼431'),
('核科学与技术学院', '陈核', '核工楼334'),
('建筑学院', '杨建', '建筑馆237'),
('城市规划与设计学院', '王城', '规划楼140'),
('风景园林学院', '李园', '园林楼243');
sql 复制代码
-- 2. 班级表
CREATE TABLE classes (
    class_id INT AUTO_INCREMENT PRIMARY KEY,      -- 班级ID,主键
    class_name VARCHAR(30) NOT NULL,              -- 班级名称 (如:计算机2023-01班)
    major VARCHAR(50) NOT NULL,                   -- 专业
    enrollment_year YEAR NOT NULL,                -- 入学年份
    department_id INT NOT NULL,                   -- 所属院系ID,外键
    FOREIGN KEY (department_id) REFERENCES departments(department_id) ON DELETE RESTRICT
);

-- 为班级表插入10条数据
INSERT INTO classes (class_name, major, enrollment_year, department_id) VALUES
('计算机2023-01班', '计算机科学与技术', 2023, 1),
('计算机2023-02班', '计算机科学与技术', 2023, 1),
('软件工程2023-01班', '软件工程', 2023, 39),
('电子信息2023-01班', '电子信息工程', 2023, 2),
('机械设计2023-01班', '机械设计制造及其自动化', 2023, 3),
('土木工程2023-01班', '土木工程', 2023, 4),
('经济管理2023-01班', '工商管理', 2023, 10),
('法学2023-01班', '法学', 2023, 11),
('临床医学2023-01班', '临床医学', 2023, 19),
('英语2023-01班', '英语', 2023, 13);
sql 复制代码
-- 3. 学生表
CREATE TABLE students (
    student_id VARCHAR(15) PRIMARY KEY,           -- 学号 (如:20230101001),主键
    student_name VARCHAR(20) NOT NULL,            -- 学生姓名
    gender ENUM('男', '女') NOT NULL,             -- 性别
    birth_date DATE,                              -- 出生日期
    email VARCHAR(50),                            -- 电子邮箱
    phone VARCHAR(20),                            -- 手机号
    address TEXT,                                 -- 家庭住址
    class_id INT NOT NULL,                        -- 所属班级ID,外键
    enrollment_date DATE NOT NULL,                -- 入学日期
    FOREIGN KEY (class_id) REFERENCES classes(class_id) ON DELETE RESTRICT
);

-- 为学生表插入20条数据
INSERT INTO students (student_id, student_name, gender, birth_date, email, phone, address, class_id, enrollment_date) VALUES
('20230101001', '张三', '男', '2002-03-15', 'zhangsan@edu.com', '13812345678', '北京市海淀区', 1, '2023-09-01'),
('20230101002', '李四', '男', '2002-07-22', 'lisi@edu.com', '13912345678', '上海市浦东新区', 1, '2023-09-01'),
('20230101003', '王芳', '女', '2002-11-08', 'wangfang@edu.com', '13612345678', '广州市天河区', 1, '2023-09-01'),
('20230101004', '刘洋', '男', '2001-12-30', 'liuyang@edu.com', '13712345678', '深圳市南山区', 2, '2023-09-01'),
('20230101005', '陈静', '女', '2002-05-18', 'chenjing@edu.com', '13512345678', '杭州市西湖区', 2, '2023-09-01'),
('20230102001', '杨光', '男', '2002-09-12', 'yangguang@edu.com', '13412345678', '南京市鼓楼区', 3, '2023-09-01'),
('20230102002', '赵雪', '女', '2002-02-25', 'zhaoxue@edu.com', '13312345678', '武汉市武昌区', 3, '2023-09-01'),
('20230102003', '周涛', '男', '2001-08-14', 'zhoutao@edu.com', '13212345678', '成都市武侯区', 4, '2023-09-01'),
('20230102004', '吴婷', '女', '2002-04-05', 'wuting@edu.com', '13112345678', '西安市雁塔区', 4, '2023-09-01'),
('20230102005', '郑浩', '男', '2002-06-19', 'zhenghao@edu.com', '13012345678', '重庆市渝中区', 5, '2023-09-01'),
('20230103001', '孙丽', '女', '2001-10-11', 'sunli@edu.com', '15912345678', '苏州市工业园区', 5, '2023-09-01'),
('20230103002', '钱勇', '男', '2002-01-28', 'qianyong@edu.com', '15812345678', '天津市和平区', 6, '2023-09-01'),
('20230103003', '马超', '男', '2002-07-03', 'machao@edu.com', '15712345678', '青岛市市南区', 6, '2023-09-01'),
('20230103004', '林晓', '女', '2002-12-15', 'linxiao@edu.com', '15612345678', '大连市中山区', 7, '2023-09-01'),
('20230103005', '黄磊', '男', '2001-11-22', 'huanglei@edu.com', '15512345678', '宁波市海曙区', 7, '2023-09-01'),
('20230104001', '徐敏', '女', '2002-08-07', 'xumin@edu.com', '15412345678', '厦门市思明区', 8, '2023-09-01'),
('20230104002', '朱强', '男', '2002-03-30', 'zhuqiang@edu.com', '15312345678', '长沙市岳麓区', 8, '2023-09-01'),
('20230104003', '何佳', '女', '2001-09-25', 'hejia@edu.com', '15212345678', '郑州市金水区', 9, '2023-09-01'),
('20230104004', '高飞', '男', '2002-05-14', 'gaofei@edu.com', '15112345678', '合肥市包河区', 9, '2023-09-01'),
('20230104005', '罗娜', '女', '2002-02-08', 'luona@edu.com', '15012345678', '福州市鼓楼区', 10, '2023-09-01');
sql 复制代码
-- 4. 教师表
CREATE TABLE teachers (
    teacher_id VARCHAR(15) PRIMARY KEY,           -- 工号,主键
    teacher_name VARCHAR(20) NOT NULL,            -- 教师姓名
    gender ENUM('男', '女') NOT NULL,             -- 性别
    title VARCHAR(20),                            -- 职称 (如:教授、副教授、讲师)
    department_id INT NOT NULL,                   -- 所属院系ID,外键
    phone VARCHAR(20),                            -- 联系方式
    email VARCHAR(50),                            -- 电子邮箱
    FOREIGN KEY (department_id) REFERENCES departments(department_id) ON DELETE RESTRICT
);

-- 为教师表插入10条数据
INSERT INTO teachers (teacher_id, teacher_name, gender, title, department_id, phone, email) VALUES
('T001', '张明', '男', '教授', 1, '13900010001', 'zhangming@edu.com'),
('T002', '李静', '女', '副教授', 1, '13900010002', 'lijing@edu.com'),
('T003', '王强', '男', '教授', 2, '13900010003', 'wangqiang@edu.com'),
('T004', '刘芳', '女', '讲师', 3, '13900010004', 'liufang@edu.com'),
('T005', '陈伟', '男', '副教授', 4, '13900010005', 'chenwei@edu.com'),
('T006', '杨雪', '女', '教授', 10, '13900010006', 'yangxue@edu.com'),
('T007', '赵刚', '男', '副教授', 11, '13900010007', 'zhaogang@edu.com'),
('T008', '周敏', '女', '讲师', 13, '13900010008', 'zhoumin@edu.com'),
('T009', '吴涛', '男', '教授', 19, '13900010009', 'wutao@edu.com'),
('T010', '郑丽', '女', '副教授', 39, '13900010010', 'zhengli@edu.com');
sql 复制代码
-- 5. 课程表
CREATE TABLE courses (
    course_id VARCHAR(15) PRIMARY KEY,            -- 课程号,主键
    course_name VARCHAR(50) NOT NULL UNIQUE,      -- 课程名
    credit DECIMAL(3, 1) NOT NULL,                -- 学分 (如:2.0, 3.5)
    description TEXT,                             -- 课程描述
    course_hours INT DEFAULT 0                    -- 课时
);

-- 为课程表插入10条数据
INSERT INTO courses (course_id, course_name, credit, description, course_hours) VALUES
('CS101', '计算机导论', 2.0, '计算机科学基础入门课程,介绍计算机系统组成、编程基础等', 32),
('CS201', '数据结构', 3.5, '研究数据的组织、存储和操作方法的课程,包括线性表、树、图等结构', 56),
('CS301', '数据库系统原理', 3.0, '介绍数据库系统的基本概念、关系模型、SQL语言和数据库设计', 48),
('EE101', '电路分析基础', 3.0, '学习电路基本定律、定理和分析方法的基础课程', 48),
('MA101', '高等数学A', 5.0, '理工科基础数学课程,包含微积分、级数、微分方程等内容', 80),
('MA201', '线性代数', 3.0, '研究向量空间、线性变换、矩阵理论等内容的数学课程', 48),
('EC101', '经济学原理', 2.5, '介绍微观经济学和宏观经济学的基本概念和原理', 40),
('LAW101', '法学导论', 2.0, '法学专业入门课程,介绍法律体系、法律概念和基本原理', 32),
('MED101', '人体解剖学', 4.0, '医学基础课程,研究人体各器官系统的形态结构和位置关系', 64),
('ENG201', '高级英语', 3.0, '提高英语综合运用能力,包括阅读、写作、翻译等技能训练', 48);
sql 复制代码
-- 6. 选课表 (学生-课程 多对多关系)
CREATE TABLE enrollments (
    enrollment_id INT AUTO_INCREMENT PRIMARY KEY, -- 选课记录ID,主键
    student_id VARCHAR(15) NOT NULL,              -- 学生ID,外键
    course_id VARCHAR(15) NOT NULL,               -- 课程ID,外键
    semester VARCHAR(20) NOT NULL,                -- 学期 (如:2023-2024-1)
    enrollment_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP, -- 选课时间
    final_grade DECIMAL(5, 2),                    -- 最终成绩
    UNIQUE KEY unique_enrollment (student_id, course_id, semester), -- 防止重复选课
    FOREIGN KEY (student_id) REFERENCES students(student_id) ON DELETE CASCADE,
    FOREIGN KEY (course_id) REFERENCES courses(course_id) ON DELETE CASCADE
);

-- 为选课表插入10条数据
INSERT INTO enrollments (student_id, course_id, semester, final_grade) VALUES
('20230101001', 'CS101', '2023-2024-1', 85.5),
('20230101001', 'MA101', '2023-2024-1', 92.0),
('20230101002', 'CS101', '2023-2024-1', 78.0),
('20230101003', 'CS201', '2023-2024-1', 88.5),
('20230101004', 'MA201', '2023-2024-1', 76.5),
('20230102001', 'EE101', '2023-2024-1', 81.0),
('20230103001', 'EC101', '2023-2024-1', 89.5),
('20230104001', 'LAW101', '2023-2024-1', 94.0),
('20230104003', 'MED101', '2023-2024-1', 87.5),
('20230104005', 'ENG201', '2023-2024-1', 83.0);
sql 复制代码
-- 7. 授课表 (教师-课程 多对多关系)
CREATE TABLE teaching_assignments (
    assignment_id INT AUTO_INCREMENT PRIMARY KEY, -- 授课任务ID,主键
    teacher_id VARCHAR(15) NOT NULL,              -- 教师ID,外键
    course_id VARCHAR(15) NOT NULL,               -- 课程ID,外键
    semester VARCHAR(20) NOT NULL,                -- 学期
    class_location VARCHAR(50),                   -- 上课地点
    class_time VARCHAR(100),                      -- 上课时间
    UNIQUE KEY unique_assignment (teacher_id, course_id, semester), -- 防止重复分配
    FOREIGN KEY (teacher_id) REFERENCES teachers(teacher_id) ON DELETE CASCADE,
    FOREIGN KEY (course_id) REFERENCES courses(course_id) ON DELETE CASCADE
);

-- 为授课表插入10条数据
INSERT INTO teaching_assignments (teacher_id, course_id, semester, class_location, class_time) VALUES
('T001', 'CS101', '2023-2024-1', '第一教学楼201', '周一 8:00-9:40'),
('T002', 'CS201', '2023-2024-1', '第一教学楼305', '周三 10:00-11:40'),
('T001', 'CS301', '2023-2024-1', '第一教学楼410', '周五 14:00-15:40'),
('T003', 'EE101', '2023-2024-1', '第二教学楼102', '周二 8:00-9:40'),
('T004', 'MA101', '2023-2024-1', '理科楼201', '周一、三 10:00-11:40'),
('T005', 'MA201', '2023-2024-1', '理科楼305', '周四 14:00-16:30'),
('T006', 'EC101', '2023-2024-1', '经管楼101', '周二 14:00-15:40'),
('T007', 'LAW101', '2023-2024-1', '法学楼203', '周三 16:00-17:40'),
('T008', 'ENG201', '2023-2024-1', '外语楼105', '周一、四 8:00-9:40'),
('T009', 'MED101', '2023-2024-1', '医学部解剖实验室', '周五 8:00-11:40');
sql 复制代码
-- 创建索引以提高查询效率(特别是在连接和条件查询上)
CREATE INDEX idx_student_class ON students(class_id);
CREATE INDEX idx_enrollment_student ON enrollments(student_id);
CREATE INDEX idx_enrollment_course ON enrollments(course_id);
CREATE INDEX idx_teaching_teacher ON teaching_assignments(teacher_id);
CREATE INDEX idx_teaching_course ON teaching_assignments(course_id);

4. 表结构说明与设计思路

  1. 院系表 & 班级表
    • 采用了两级结构,院系 -> 班级 -> 学生。这样设计清晰,符合现实中的组织结构。
    • classes 表中的 department_id 外键关联到 departments
  2. 学生表 & 教师表
    • 分别通过 class_iddepartment_id 关联到班级和院系。
    • 主键使用了有意义的字符串(学号、工号),在业务中更常用。AUTO_INCREMENT 用于需要自增的ID主键。
  3. 课程表
    • 是一个独立的基础表,存储课程本身的属性。
  4. 关系表(选课表 & 授课表)
    • 这是处理多对多关系的核心。
    • enrollments 表:解决了"一个学生可以选多门课,一门课可以被多个学生选"的问题,并记录了核心业务数据------成绩学期
    • teaching_assignments 表:解决了"一个老师可以教多门课,一门课可以由多个老师教"的问题,并记录了 学期上课地点 等信息。
    • 在这两个表中,都设置了唯一约束 UNIQUE KEY,以防止数据的重复录入(例如,防止同一个学生在同一学期重复选修同一门课)。
  5. 约束
    • PRIMARY KEY: 唯一标识每条记录。
    • FOREIGN KEY: 保证数据的一致性和完整性。ON DELETE RESTRICT 可以防止误删父表记录(如,有学生的班级不能被删除)。ON DELETE CASCADE 用于关系表,表示主表记录删除时,关联的记录也自动删除(如,删除一个学生,他的所有选课记录也自动删除)。
    • NOT NULL: 确保关键信息不为空。
    • UNIQUE: 确保某些字段的唯一性。

5、查询语句练习

(1)院系表
sql 复制代码
#针对院系表进行查询

#查询表中所有的信息
SELECT * FROM departments;

#排序,默认是升序ASC
SELECT * FROM departments ORDER BY department_id;

#降序排序
SELECT * FROM departments ORDER BY department_id DESC;
(2)班级表
sql 复制代码
#针对班级表进行查询

#查询表中所有信息
SELECT * FROM classes;

#查询指定的字段
SELECT class_id,class_name FROM classes;

# 给表名另外命名成别名,并统计出行数,10行
SELECT c.class_id,c.class_name,c.major,c.enrollment_year,COUNT(*) as class_count FROM classes c;
# 院系表共50行数据,加入院系表一起查询,共500行,将每一个班级每个学生对应到每个院系,10*50=500
# 上述查询的数据是错误的,需要加上这部分命令:ON c.department_id=d.department_id,将两个表对应的值进行一一对应
SELECT c.class_id,c.class_name,c.major,c.enrollment_year,d.department_name,COUNT(*) AS jion_count FROM classes c JOIN departments d ;

#增加ON c.department_id=d.department_id的查询结果
SELECT c.class_id,c.class_name,c.major,d.department_name,c.enrollment_year FROM classes c JOIN departments d ON c.department_id=d.department_id ORDER BY c.class_id;
(3)学生表
sql 复制代码
# 对学生表进行查询实验,总共20行数据
SELECT * FROM students;

# 在学生表中加入其他表共同查询
SELECT s.student_id,s.student_name,s.gender,c.class_name,d.department_name,c.major
FROM students s 
JOIN classes c ON s.class_id=c.class_id
JOIN departments d ON c.department_id = d.department_id
ORDER BY s.student_id
sql 复制代码
# 查询出每个班级的人数
SELECT c.class_id,c.class_name,s.student_id,COUNT(s.student_id) AS student_count
FROM classes c 
LEFT JOIN students s ON c.class_id = s.class_id
GROUP BY c.class_name,c.class_id
ORDER BY c.class_id
sql 复制代码
# 查询出每个专业的人数,专业在classes表中,学生姓名在students表中,这两个表通过class_id关联,按照专业进行分组
SELECT s.student_name,c.major,COUNT(s.student_name) AS student_count
FROM classes c
JOIN students s ON c.class_id=s.class_id
GROUP BY c.major
ORDER BY s.student_id;
(4)教师表
sql 复制代码
# 教师表查询实验,总共10行数据
SELECT * FROM teachers;

# 教师表通过department_id与院系表进行关联
# 查看教师及其所属院系信息
SELECT * 
FROM teachers t
JOIN departments d ON t.department_id = d.department_id;

# 查看每个院系的教师人数
SELECT d.department_name,COUNT(t.teacher_id) AS teacher_count
FROM teachers t
JOIN departments d on t.department_id = d.department_id
GROUP BY d.department_name
HAVING COUNT(t.teacher_id) > 0
ORDER BY d.department_id;
(5)课程表
sql 复制代码
# 课程表查询实验
# 查看所有课程信息
SELECT *
FROM courses;

# 按学分统计课程分布
SELECT credit,COUNT(*) AS credit_count
FROM courses
GROUP BY credit
ORDER BY credit;
(6)选课表
sql 复制代码
# 选课表查询实验
SELECT * FROM enrollments;

# 查看详细的选课信息
SELECT e.student_id,c.course_id,s.student_name,cls.class_name,e.semester,e.final_grade
FROM enrollments e 
JOIN students s ON e.student_id = s.student_id
JOIN courses c ON e.course_id = c.course_id
JOIN classes cls ON cls.class_id = s.class_id
ORDER BY e.enrollment_id;
sql 复制代码
# 查看每门课程的选课人数和平均成绩
SELECT e.course_id,c.course_name,COUNT(e.student_id) as enrollment_count,AVG(e.final_grade) avg_grade
FROM enrollments e 
JOIN courses c ON e.course_id = c.course_id
GROUP BY c.course_name
HAVING COUNT(e.student_id) > 0
ORDER BY c.course_id;
sql 复制代码
# 查看每个学生的选课情况
SELECT s.student_id,s.student_name,e.course_id,e.final_grade
FROM students s 
JOIN enrollments e on s.student_id = e.student_id;
(7)授课表
sql 复制代码
# 授课表查询实验
# 查看基本信息
SELECT ta.teacher_id,ta.course_id,c.course_name,ta.semester,ta.class_location,t.teacher_name,t.title,d.department_name
FROM teaching_assignments ta
JOIN teachers t ON t.teacher_id = ta.teacher_id
JOIN departments d ON t.department_id = d.department_id
JOIN courses c ON ta.course_id = c.course_id;
sql 复制代码
# 查看每位教师的授课任务
SELECT 
    t.teacher_id,
    t.teacher_name,
    COUNT(ta.course_id) as teaching_count,
    GROUP_CONCAT(c.course_name) as courses_teaching
FROM teachers t
LEFT JOIN teaching_assignments ta ON t.teacher_id = ta.teacher_id
LEFT JOIN courses c ON ta.course_id = c.course_id
GROUP BY t.teacher_id, t.teacher_name
HAVING COUNT(ta.course_id) > 0
ORDER BY t.teacher_id;
sql 复制代码
# 查看每门课程的授课教师信息
SELECT 
    c.course_id,
    c.course_name,
    t.teacher_name,
    t.title,
    ta.class_location,
    ta.class_time
FROM courses c
JOIN teaching_assignments ta ON c.course_id = ta.course_id
JOIN teachers t ON ta.teacher_id = t.teacher_id
ORDER BY c.course_id;
相关推荐
着迷不白3 小时前
华为堡垒机
linux·运维·服务器·centos
飘忽不定的bug3 小时前
Atlas 200I AI加速模块-修改和打包文件系统
linux·ascend310b
妮妮喔妮3 小时前
linux:查看某个文件下开启的进程占用的是哪个端口?
linux·运维·服务器
Y unes4 小时前
《i.MX6ULL LED 驱动实战:内核模块开发与 GPIO 控制》
linux·c语言·驱动开发·vscode·ubuntu·嵌入式
FJW0208144 小时前
【Linux】输入输出管理
linux·运维·服务器
晨曦夜月5 小时前
vim及其模式的操作
linux·编辑器·vim
zl_dfq5 小时前
Linux基础开发工具 之 【yum、vim、gcc/g++】
linux·1024程序员节
金仓拾光集5 小时前
筑牢风控生命线:金仓数据库替代MongoDB,重构证券融资融券业务的数据基石
数据库·mongodb·信创·1024程序员节·kingbasees·国产化替代
枫叶梨花5 小时前
实战:将 Nginx 日志实时解析并写入 MySQL,不再依赖 ELK
mysql·nginx·elk