ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:144.08KB ,
资源ID:9003922      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9003922.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(教务管理系统数据库设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

教务管理系统数据库设计.docx

1、教务管理系统数据库设计教务管理数据库系统课程设计1、需求分析1.1 信息要求:教务管理系统涉及的实体有:教师工作证号、姓名、职称、电话等;学生学号、姓名、性别、出生年月等;班级班号、最低总学分等;系系代号、系名与系办公室电话等;课程课序号、课名、学分、上课时间及名额等。这些实体之间的联系如下:每个学生都属于一个班,每个班都属于一个系,每个教师也都属于一个系。每个班的班主任都由一名教师担任。一名教师可以教多门课,一门课可以有几位主讲老师,但不同老师讲的同一门课其课序号就是不同的(课序号就是唯一的)。一名同学可以选多门课,一门课可被若干同学选中。一名同学选中的课若已学完,应该记录有相应成绩。本单位

2、学生、教师都有重名,工作证号、学号可以作为标识。1.2 处理要求:教学系统主要提供数据维护、选课与信息查询。其中常见的查询有:系统中各对象的基本信息查询。 查询指定班、系的学生信息(名单、人数等)。查询学生的成绩、学分情况。查询教师授课情况与学生选课情况。1.3 安全性与完整性要求:安全性要求:1、系统应设置访问用户的标识以鉴别就是否就是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2、系统应对不同的数据设置不同的访问级别,限制访问用户可查询与处理数据的类别与内容;3、系统应对不同用户设置不同的权限,区分不同的用户,如学生,教师,系统管理员。完整性要求:1、各种信息记录的完整性,关

3、键信息记录内容不能为空;2、各种数据间相互的联系的正确性;3、相同的数据在不同记录中的一致性。1.4 系统功能的设计与划分根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:第一部分:用户管理部分 1、处理用户注册 2、处理用户登录 3、用户可以查询学生信息。 4、用户可以查询快件信息。 5、用户可以提交与查询报修信息。 6、用户可以插入与删除用户自己的离返校信息。 7、用户可以修改用户自己密码。第二部分:管理员管理部分各部分完成的功能如下: 1、处理管理员登录 2、管理员可以查询学生信息。 3、管理员可以发布与更新快件信息。4、管理员可以插入、修改与查询报修信息。 5、管理员

4、可以插入与查询学生夜归信息。6、管理员可以查询在校与离校学生信息。7、管理员可以修改管理员密码。2、概念设计2、1概念模型(E-R图):2、2数据字典:a、数据项编号属性名存储代码类型长度备 注1学号Snochar11学生编号2姓名Snamechar20学生的姓名,任意合法字符3性别Ssexchar2学生的性别4出生年月Sbirthdate出生时间间接表示年龄5班号Classchar6班级编号6最低总学分TotalCredit浮点数4必须修足的学分总数7工作证号Tnochar6教师的编号8教师姓名Tnamechar20教师的姓名,任意合法的字符9职称Titlechar8教师的职位称号10电话T

5、elchar11教师的联系电话11系代号Dnochar3院系的编号12系名Departmentchar10院系的名称13系办公室电话Dphonechar11院系办公室的工作电话14课序号Cnochar6可区分不同老师教授的同一课程15课名Cnamechar20课程的名称16学分Credit浮点数2课程的学分17上课时间Ctimedatetime上课的时间18名额CnumInt课容量19成绩GradeInt选课学生某门课的成绩b、数据结构编号数据结构名组 成1学生学号、姓名、性别、出生年月、所属班级班号2教师工作证号、教师姓名、职称、电话、所在系的系号3班级班号、最低总学分、班主任的工作证号、所

6、属系的系号4系系代号、系名、系办公室电话5课程课序号、课名、学分、上课地点、名额、授课教师的工作证号6选课记录课序号、学号、成绩c、数据流编号数 据 流 名输 入输 出1变更学生信息变更信息学生信息2查询学生信息学号学生信息3变更教师信息变更信息教师信息4查询教师信息工作证号教师信息5变更班级信息变更信息班级信息6查询班级信息班号班级信息7变更系信息变更信息系信息8查询系信息系代号系信息9变更课程信息变更信息课程信息10查询课程信息课序号课程信息11选课选课表变更信息选课信息12查询选课信息学号或课序号选课信息13查询授课信息工作证号授课信息d、数据存储数据存储名输入数据流输出数据流说 明 部

7、 分学生信息表修改学生信息学生信息某课程的学生信息教师信息表修改教师授课教师信息班主任信息课程信息表所有开设课程信息学生选择的课程信息教师任教的课程信息选课表学生所有的选课记录学生的选课表随机存取 记录学生本学期所选课程信息班级信息表所有班级信息班级基本信息系信息表所设系的信息系的基本信息e、处理过程处理过程名输入数据流输 出 数 据 流选课选课信息选定课信息登记成绩成绩信息学生所选课程成绩信息修改学生信息更改学生信息修改后的学生信息修改教师信息更改教师信息修改后的教师信息数据维护各信息表的修改信息修改后各信息表2、3 数据流图3、逻辑结构设计3、1 E-R图向关系模型的转换(关系的码用下横线

8、表出)教师(工作证号,姓名,职称,电话,系代号)代码表示:Teacher ( Tno, Tname, Title, Tel, Dno )此为“教师”实体对应的关系模式。其中1:n联系“工作”与此关系模式合并,Dno为外码。存在的函数依赖为Tno (Tname,Title,Tel,Dno),且不存在多值依赖,所以满足4NF。学生(学号,姓名,性别,出生年月,班号)代码表示:Student ( Sno, Sname, Ssex, Sbirth, Class )此为“学生”实体对应的关系模式。其中1:n联系“属于”与此关系模式合并,Class为外码。存在的函数依赖为Sno (Sname,Ssex,S

9、birth,Class),且不存在多值依赖,所以满足4NF。系(系代号,系名,系办公室电话)代码表示:Department ( Dno, Dname, Dphone )此为“系”实体对应的关系模式。存在的函数依赖为Dno (Dname,Dphone),且不存在多值依赖,所以满足4NF。课程(课序号,课名,学分,上课时间,名额,工作证号)代码表示:Course ( Cno, Cname, Credit, Ctime, Cnum, Tno )此为“课程”实体对应的关系模式。其中1:n联系“授课”与此关系模式合并,Tno为外码。存在的函数依赖为Cno (Cname,Credit,Ctime,Cnum

10、,Tno),且不存在多值依赖,所以满足4NF。选课(学号,课序号,成绩)代码表示:SC ( Sno, Cno, Grade )此为m:n联系“选修”所对应的关系模式。Sno与Cno均为外部码。存在的函数依赖为完全函数依赖(Sno,Cno) Grade,且不存在多值依赖,所以满足4NF。班级(班号,最低总学分,工作证号,系代号)代码表示:Class ( Class, TotalCredit, Tno, Dno )此为“班级”实体对应的关系模式。其中1:n联系“属于”与1:1联系“负责”与此关系模式合并Tno与Dno为外码。该关系模式中存在传递函数依赖:Class Tno, (Tno Class)

11、,Tno Dno,可得Class Dno,故Class 不属于3NF。解决方法就是将其模式分解为:Class ( Class, TotalCredit, Tno )与T-D( Tno, Dno),分解后的关系模式满足4NF,并且T-D与Teacher的码相同,可合并为同一模式。但就是考虑到系统要经常进行系的学生信息查询,此时就不得不对Student、Class与Teacher三个表进行连接查询,而连接就是影响查询效率的主要原因,所以取消对Class的模式分解。此时Class关系模式满足2NF。3、2 设计用户子模式为了方便程序查询,建立了如下用户视图:1、某系的学生信息视图(学号,姓名,性别,

12、出生年月,班号)2、某系的教师信息视图(工作证号,教师姓名,职称,电话,负责班级)3、某课程的学生成绩单(学号,姓名,班级,成绩)4、教师授课信息表(工作证号,教师姓名,职称,教授课程,学分,上课时间)5、学生已选课表(课序号,课名,学分,授课教师,上课时间,名额)4、物理设计4.1 选择存取方法1、数据库管理系统自动在每个表的主码上建立索引,通常为B + 树索引。2、在Student表Sname列上建立Stu_name索引,因为查询操作很多都使通过学生姓名进行的。3、在Teacher表Tname列上建立Tea_name索引,因为查询操作很多都使通过教师姓名进行的。4.2 确定数据库的存储结构

13、1、为了提高系统性能,根据具体情况将数据的易变部分与稳定部分、经常存取部分与存取频率较低部分分开存放。2、DBMS产品一般都提供了一些系统配置变量、存储分配参数,根据应用环境确定这些参数值,并且在系统运行时还要根据系统实际运行情况进行调整,以使系统性能最佳。4.3 评价物理结构根据所选用的DBMS,如SQL Server 2000,从定量估算各种方案的存储空间、存取时间与维护代价入手,对估算结果进行权衡、比较,选择一个较优的合理的物理结构。5、系统实施编写关系模式,载入数据。分期分批地组织数据入库,先输入小批量数据做调试用,待试运行基本合格后,再大批量输入数据,逐步增加数据量,逐步完成运行评价

14、。需要注意的就是,要首先调试运行DBMS的恢复功能,做好数据库的转储与恢复工作。基本SQL语言代码如下:CREATE SCHEMA TeachAffair AUTHORIZATION GaoCREATE TABLE Department (Dno CHAR(3) PRIMARY KEY, /*列级完整性约束条件,Dno就是主码*/ Dept CHAR(20) UNIQUE NOT NULL, Dphone CHAR(11), );CREATE TABLE Teacher (Tno CHAR(6) PRIMARY KEY, /*列级完整性约束条件,Tno就是主码*/ Tname CHAR(20)

15、 NOT NULL, Title CHAR(8), Tel CHAR(11), Dno CHAR(3), FOREIGN KEY (Dno) REFERENCES Department(Dno) /*表级完整性约束条件,Dno就是外码*/ );CREATE TABLE Class (Class CHAR(6) PRIMARY KEY, /*列级完整性约束条件,Class就是主码*/ TotalCredit NUMERIC(4,1), Tno CHAR(6), Dno CHAR(3), FOREIGN KEY (Tno) REFERENCES Teacher(Tno), /*表级完整性约束条件,

16、Tno就是外码*/ FOREIGN KEY (Dno) REFERENCES Department(Dno) /*表级完整性约束条件,Dno就是外码*/ );CREATE TABLE Student (Sno CHAR(11) PRIMARY KEY, /*列级完整性约束条件,Sno就是主码*/ Sname CHAR(20) NOT NULL, Ssex CHAR(2), Sbirth DATETIME, Class CHAR(6), FOREIGN KEY (Class) REFERENCES Class(Class) /*表级完整性约束条件,Class就是外码*/ );CREATE TAB

17、LE Course (Cno CHAR(6) PRIMARY KEY, /*列级完整性约束条件,Cno就是主码*/ Cname CHAR(20) NOT NULL, Credit NUMERIC(2,1), Ctime DATETIME, Cnum SMALLINT, Tno CHAR(6), FOREIGN KEY (Tno) REFERENCES Teacher(Tno) /*表级完整性约束条件,Tno就是外码*/ );CREATE TABLE SC (Sno CHAR(11) NOT NULL, Cno CHAR(6) NOT NULL, Grade SMALLINT CHECK(Gra

18、de=0 AND Grade=100), PRIMARY KEY (Sno, Cno), /*主码由两个属性构成,必须作为表级完整性进行定义*/ FOREIGN KEY (Sno) REFERENCES Student(Sno) /*表级完整性约束条件,Sno就是外码*/ ON DELETE CASCADE /* 当删除Student表中的元组时,级连删除SC表中相应的元组*/ ON UPDATE CASCADE, /*当更新Student表中的Sno时,级连更新SC表中相应的元组*/ FOREIGN KEY (Cno) REFERENCES Course(Cno) /*表级完整性约束条件,S

19、no就是外码*/ ON DELETE NO ACTION /* 当删除Course表中的元组造成了与SC表不一致时,拒绝删除*/ ON UPDATE CASCADE, /*当更新Course表中的Cno时,级连更新SC表中相应的元组*/ );/*DROP TABLE SC;*/*建立索引*/CREATE UNIQUE INDEX Stu_name ON Student(Sname);CREATE UNIQUE INDEX Tea_name ON Teacher(Tname);CREATE UNIQUE INDEX SCno ON SC(Sno ASC, Cno DESC);/*查询某个系(以G

20、IS为例)的学生信息*/CREATE VIEW GIS_Student /*建立某个系(以GIS为例)的学生信息视图*/ASSELECT *FROM StudentWHERE Class IN (SELECT Class FROM Class WHERE Dname=GIS)WITH CHECK OPTION;SELECT *FROM GIS_Student;SELECT COUNT(*)FROM GIS_Student;/*查询班级的学生信息*/SELECT Sno, Sname, Ssex, BirthFROM StudentWHERE Class = 114072;SELECT COUN

21、T(*)FROM StudentWHERE Class=114072;/*查询学生的成绩、学分*/SELECT SC、Cno, Cname, Credit, GradeFROM Course, SCWHERE Sno = 20071000500 AND SC、Cno=Course、Cno;SELECT SUM(Credit)FROM SC,CourseWHERE Sno=20071000500 AND SC、Cno=Couse、Cno;/*查询教师授课信息*/SELECT Course、*FROM CourseWHERE Tno=100123;SELECT Student、Sno,Sname,

22、Class,GradeFROM Course,SC,StudentWHERE Tno=100123 AND Course、Cno=SC、Cno AND SC、Sno=Student、Sno;6、运行维护1、针对不同的应用要求制定不同的转储计划,一旦发生故障尽快将数据库恢复到某种一致的状态,并尽可能减少对数据库的破坏;2、根据实际情况修改数据库原有的安全性、完整性控制;3、在数据库运行过程中,监督系统运行,对监测数据进行分析,找出改进系统性能的方法;4、数据库运行一段时间后,由于记录不断增、删、改,会使数据库的物理存储情况变坏,降低数据的存取效率,数据库性能下降。这时应按原设计要求重新安排存储位置、回收垃圾、减少指针链等,提高系统性能。当原有的数据库设计不能满足新的需求,需要重构造数据库,调整数据库的模式与内模式。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1