
课 程 设 计 报 告
课程名称 数据库原理与应用课程设计
选题名称
班级 姓名 学号
实验组别 同组实验者
完成时间 2025 年 1 月 2 日至 2025 年 1 月 4 日
指导教师 章修远

目 录
在线学习平台系统.......................................................................................................................1
1 系统概述...............................................................................................................................1
2 数据库设计...........................................................................................................................1
2.1 系统需求分析................................................................................................................1
2.2 概念结构设计................................................................................................................2
2.3 逻辑结构设计................................................................................................................3
2.4 物理结构设计................................................................................................................4
3 数据库实现...........................................................................................................................5
4 程序运行的测试与分析........................................................................................................7
5 结论与心得..........................................................................................................................12
6 课程设计总结......................................................................................................................12
7 致谢......................................................................................................................................13
8 参考文献..............................................................................................................................13

1
在线学习平台系统
1 系统概述
随着信息技术的快速发展,在线学习平台成为了现代教育的重要组成部分。
在线学习平台不仅可以为学生提供灵活的学习时间和丰富的学习资源,还能够通
过数据分析帮助教师优化教学内容,提高教学效率。本项目旨在设计一个功能完
善、性能优良的在线学习平台数据库系统,以支持课程管理、学生学习进度跟踪、
考试组织与评分等核心功能。
本系统的开发背景在于教育信息化的趋势以及在线教育市场的快速增长。通
过本系统的开发,可以实现以下目标:
1. 提供高效的课程管理功能,支持课程的创建、查询、更新和删除。
2. 实现学生学习进度的动态跟踪,便于教师了解学生的学习情况。
3. 支持考试的组织与评分功能,为学生提供即时反馈。
4. 具备良好的可扩展性和性能,能够满足未来用户量增长的需求。
本项目的意义在于通过数据库的科学设计,为在线学习平台提供稳定可靠的
数据支持,促进教育资源的高效利用。
2 数据库设计
2.1 系统需求分析
2.1.1 数据需求描述
系统主要涉及以下数据:
课程信息:包括课程编号、课程名称、课程描述、课程创建时间等。
学生信息:包括学生编号、姓名、性别、联系方式、注册时间等。
学习进度:记录学生在各课程中的学习情况,包括完成章节、学习时间等。
考试信息:包括考试编号、考试名称、考试时间、考试成绩等。
2.1.2 系统功能需求
课程管理:支持课程的创建、更新、查询和删除。

2
学生管理:支持学生信息的录入、查询和更新。
学习进度跟踪:记录学生的学习进度,提供统计分析功能。
考试管理:支持考试的安排、试题管理、成绩录入与查询。
权限管理:区分管理员、教师和学生的权限,保证数据安全。
2.1.3 其他性能需求
可扩展性:数据库设计需支持用户量和数据量的增长。
性能优化:针对高并发查询和数据存储设计优化方案。
数据安全性:确保数据的完整性和保密性。
2.2 概念结构设计
系统的 E-R 图主要包括以下实体:
课程(Course)、学生(Student)、学习进度(Progress)、考试(Exam)。
在本数据库设计中,四个实体之间的逻辑关系如下:
(1)课程(Course)与学生(Student)
通过学习进度(Progress)建立联系:每位学生可以选修多门课程,每门课程
也可以被多位学生选修,这种多对多的关系通过学习进度表来实现。学习进度表
记录了学生在每门课程中的学习情况,包括完成章节数和学习时长。
(2)课程(Course)与考试(Exam)
是“一对多”的关系:每门课程可以安排多次考试,但每次考试只能对应一门课
程。考试表中通过课程编号(course_id)字段与课程表关联,确保考试记录归属于
相应的课程。
(3)学生(Student)与考试(Exam)
通过学习进度间接联系:学生通过选修课程参与考试,考试成绩可作为评估
学生学习效果的重要依据。
各实体之间的关系通过 E-R 图展示,按功能模块建立子 E-R 图,最后进行合
并。

3
学生
学习进度
拥有
1
n
课程
对应
1
n
考试
安排
1
n
学生编号
姓名
性别
联系方式 注册时间
完成章节学习时间
课程创建时
间
课程描述
课程名称
课程编号
考试名称
考试编号
考试时间
考试成绩
图 1 系统 E-R 图
2.3 逻辑结构设计
2.3.1 关系模式设计
将 E-R 图转换后的关系模型应具有 4 个关系模式:
课程(Course)(课程编号,课程名称,课程描述,创建时间)
学生(Student)(学生编号,姓名,性别,联系方式,注册时间)
学习进度(Progress)(学生编号,课程编号,完成章节,学习时间)
考试(Exam)(考试编号,考试名称,考试时间,课程编号,考试成绩)
关系模式经过规范化处理,确保数据冗余最小化。
2.3.2 数据类型定义
本系统拟采用 Navicat 数据库管理系统,在 MySQL 中将逻辑模型用如下表来
实现:
表 2-1 课程信息表(Course)
序号
列名
数据类型
长度
为空性
说明
1
course_id
Int
Not null
主键
2
course_name
varchar
100
Not null
课程名称
3
course_desc
Text
课程描述
4
created_time
Timestamp
Not null
创建时间