【课设系列】高中化学网上辅助教学平台(中)

简介: 高中化学网上辅助教学平台(中)

3 数据库设计

3.1 数据库概念结构设计

概念结构设计是将系统需求分析得到的用户需求抽象为反映用户观点的信息结构的过程。概念结构设计的结果是数据库的概念模型,即即E-R模型。由于它是从现实世界的角度进行抽象和描述,所以它与计算机硬件、数据库逻辑结构和支持数据库的DBMS无关。在数据库设计中应重视概念结构设计,它是整个数据库设计的关键,是为计算机存储数据做准备工作。

该系统面向的对象是高中学生和物理教师,所以在需求分析时主要考虑这两个方面的需求。对于广大学生来说,最重要的是方便浏览到自己想要的资料和与教师交流;其次,对于教师来说,主要负责上传课程资源和答疑解惑。为了及时更新系统的资源,在后台中设置了管理员角色,其重要工作是对课程进行统一管理,以及对所有教师和学生的信息进行维护。根据以上需求确定了系统的实体包括课程、教师、学生、教学资源、学生问题、问题回复,各实体属性图如图3.1-3.6所示。

imgimg

图 3.1 教师信息的实体属性图 图 3.2 教学资源的实体属性图

imgimg

图3.3 学生信息的实体属性图 图3.4 课程信息的实体属性图imgimg

图3.5 学生问题信息的实体属性图 图3.6 问题回复信息的实体属性图

根据各部分实体属性图和他们之间的关系,得到系统总体E—R图,如图3.7所示:

img

图3.7 系统总体E—R图

3.2 数据库逻辑结构设计

E-R图表示的概念模型是用户数据要求的形式化。E-R图是独立于任何一种数据模型的概念信息结构,也不为任何一个DBMS所支持。逻辑结构设计的任务就是把概念结构设计好的基本E-R图转换为与选用的某个具体的DBMS所支持的数据模型相符合的逻辑结构,设计的结果是一组关系模式。

在本系统中将图3.7中数据库E-R图转换成为关系模型如下:

课程(课程编号,课程名,课程简介,教学大纲,教师编号)

教师(教师编号,姓名,性别,职称,手机号,电子邮箱,地址,)

学生(学生编号,姓名,性别,手机号,电子邮箱,入学日期)

教学资源(资源编号,资源名称,资源内容,课程编号,教师编号,上传日期)

学生问题(问题编号,标题,内容,课程编号,学生编号,提问日期)

问题回复(回复信息编号,回复内容,问题编号,教师编号,回复日期)

3.3 数据库物理结构设计

数据库的物理结构主要指数据库在物理设备上的存储结构与存取方法,它依赖于给定的计算机系统。设计的任务是选择合适的存储结构和存取路径,也就是设计数据库的内模式。

内模式和逻辑模式不一样,不直接面向用户,一般的用户不一定、也不需要了解内模式的设计细节。内模式的设计可以不考虑用户理解的方便,其主要的设计目标有两个:其一提高数据库的性能,特别是满足主要应用的性能要求;其二能够有效地利用存储空间。

根据数据库物理结构设计理论,将该系统逻辑结构转换为物理结构,如表4.1-4.6所示:

(1)教师信息表

教师信息表(teacher)主要存放教师基本信息,如表4.1所示。

表3.1 教师信息表

字段 数据类型 长度 允许为空 说明
tno nchar 11 教师编号
tname varchar 20 姓名
tsex varchar 20 性别
level varchar 10 职称
tphone nchar 11 手机号码
tmail varchar 20 电子邮箱
taddress varchar 30 地址

(2) 学生信息表

学生信息表(student)主要存放学生基本信息,如表3.2所示。

表3.2 学生信息表

字段 数据类型 长度 允许为空 说明
sno nchar 11 学生编号
sname varchar 20 姓名
ssex char 4 性别
smail varchar 20 电子邮箱
saddress varchar 100 地址
sphone nchar 11 手机号码
sdate date 入学日期

(3)课程信息表

课程信息表(course)主要存放课程信息,如表3.3所示。

表3.3 课程信息表

字段 数据类型 长度 允许为空 说明
cno nchar 11 课程编号
cname varchar 20 课程名
intro text 课程简介
outline text 教学大纲
ctno nchar 11 任课教师编号

(4)教学资源表

教学资源表(resource)主要存放教学资源信息,如表3.4所示。

表3.4 教学资源表

字段 数据类型 长度 允许为空 说明
rno nchar 11 资源编号
rname varchar 255 资源名
cno nchar 11 课程编号
tno nchar 11 教师编号
upload date 上传日期
rcontent text 资源内容

(5)学生问题表

学生问题表(question)主要存放学生提出的问题信息,如表3.5所示。

表3.5 学生问题表

字段 数据类型 长度 允许为空 说明
qno nchar 11 问题编号
title varchar 255 问题标题
qcontent text 问题内容
cno nchar 11 课程编号
sno nchar 11 学生编号
qdate date 提问日期

(6)问题回复表

问题回复表(answer)主要存放答疑信息),如表3.6所示。

表3.6 问题回复表

字段 数据类型 长度 允许为空 说明
ano nchar 11 回复信息编号
acontent text 回复内容
qno nchar 11 问题编号
tno int 11 教师编号
adate date 回复日期
相关文章
|
10月前
|
消息中间件 安全 Java
VCTGO:一款让开发者直呼“真香”的企业级快速开发平台,你绝对不能错过!
嗨,大家好,我是小华同学。关注我们获取“最新、最全、最优质”的开源项目和高效工作学习方法。今天为大家介绍一款企业级快速开发平台——VCTGO。基于Spring Boot + Vue.js,VCTGO提供用户管理、菜单管理、角色管理、日志管理、代码生成、系统监控等核心功能,支持从开发到部署的一站式解决方案。技术架构采用主流技术栈,包括前端Vue.js + Element UI,后端Spring Boot + MyBatis Plus,数据库MySQL,缓存Redis,消息队列RabbitMQ,
305 27
|
11月前
|
固态存储 虚拟化 iOS开发
VMware ESXi 8.0U3c macOS Unlocker & OEM BIOS NVMe 驱动特殊定制版 (集成驱动版)
VMware ESXi 8.0U3c macOS Unlocker & OEM BIOS NVMe 驱动特殊定制版 (集成驱动版)
559 33
VMware ESXi 8.0U3c macOS Unlocker & OEM BIOS NVMe 驱动特殊定制版 (集成驱动版)
|
负载均衡 算法 Linux
深入探索Linux内核调度器:公平与效率的平衡####
本文通过剖析Linux内核调度器的工作机制,揭示了其在多任务处理环境中如何实现时间片轮转、优先级调整及完全公平调度算法(CFS),以达到既公平又高效地分配CPU资源的目标。通过对比FIFO和RR等传统调度策略,本文展示了Linux调度器如何在复杂的计算场景下优化性能,为系统设计师和开发者提供了宝贵的设计思路。 ####
290 26
|
NoSQL MongoDB 数据库
MongoDB备份与恢复总结
MongoDB备份与恢复总结
808 0
|
10月前
|
机器学习/深度学习 人工智能 算法
DeepSeek:掀翻互联网底层的“东方神秘力量” ——当AI大模型成为网络世界的“基建狂魔”
DeepSeek正重构网络底层逻辑,从“哑管道”到“认知神经”,赋予网络思考能力。它通过意图驱动和认知架构,优化带宽资源,提升效率。技术上,MOE+MLA架构与FP8精度训练大幅降低成本,性能超越传统模型。产业链方面,通信巨头转型为“AI驯兽师”,推出智能预测、定制化网络等服务。然而,AI基建也面临安全挑战,如僵尸网络攻击和隐私问题。展望6G,AGI将成新“网络原住民”,带来更智能的服务。这场变革不仅提升了连接效率,还创造了更多价值。
|
存储 JavaScript 搜索推荐
Node框架的安装和配置方法
安装 Node 框架是进行 Node 开发的第一步,通过正确的安装和配置,可以为后续的开发工作提供良好的基础。在安装过程中,需要仔细阅读相关文档和提示,遇到问题及时解决,以确保安装顺利完成。
681 58
|
监控 安全 Linux
网络安全事件应急响应
应急响应是针对网络安全事件的快速处理流程,包括信息收集、事件判断、深入分析、清理处置、报告产出等环节。具体步骤涵盖准备、检测、抑制、根除、恢复和总结。
|
Linux 知识图谱
Centos7安装killall,fuser, killall,pstree和pstree.x11
通过上述步骤,您已在CentOS 7系统中成功部署了killall、fuser、pstree以及pstree.x11,为高效管理系统进程打下了坚实基础。更多关于服务器管理与优化的知识,获取全面技术支持与解决方案。
530 1
|
存储 安全 程序员
|
前端开发 JavaScript 数据处理
React 中展示组件和容器组件
【8月更文挑战第31天】
378 0