版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统课程设计教务管理系统1、需求分析11 信息要求:教务管理系统涉及的实体有:l 教师工作证号、姓名、职称、电话等;l 学生学号、姓名、性别、出生年月等;l 班级班号、最低总学分等;l 系系代号、系名和系办公室电话等;l 课程课序号、课名、学分、上课时间及名额等。这些实体之间的联系如下:l 每个学生都属于一个班,每个班都属于一个系,每个教师也都属于一个系。l 每个班的班主任都由一名教师担任。l 一名教师可以教多门课,一门课可以有几位主讲老师,但不同老师讲的同一门课其课序号是不同的(课序号是唯一的)。l 一名同学可以选多门课,一门课可被若干同学选中。l 一名同学选中的课若已学完,应该记录有
2、相应成绩。l 本单位学生、教师都有重名,工作证号、学号可以作为标识。12 处理要求:教学系统主要提供数据维护、选课和信息查询。其中常见的查询有:系统中各对象的基本信息查询。 查询指定班、系的学生信息(名单、人数等)。查询学生的成绩、学分情况。查询教师授课情况和学生选课情况。13 安全性与完整性要求:l 安全性要求:1.系统应设置访问用户的标识以鉴别是否是合法用户,并要求合法用户设置其密码,保证用户身份不被盗用;2.系统应对不同的数据设置不同的访问级别,限制访问用户可查询和处理数据的类别和内容;3.系统应对不同用户设置不同的权限,区分不同的用户,如学生,教师,系统管理员。l 完整性要求:1.各种
3、信息记录的完整性,关键信息记录内容不能为空;2.各种数据间相互的联系的正确性;3.相同的数据在不同记录中的一致性。14 系统功能的设计和划分根据如上得到的用户需求,我们将本系统按照所完成的功能分成以下几部分:第一部分:用户管理部分第二部分:管理员管理部分各部分完成的功能如下: 1、用户管理部分 1、处理用户注册 2、处理用户登录 3、用户可以查询学生信息。 4、用户可以查询快件信息。 5、用户可以提交与查询报修信息。 6、用户可以插入与删除用户自己的离返校信息。 7、用户可以修改用户自己密码。2、管理员管理部分 1、处理管理员登录 2、管理员可以查询学生信息。 3、管理员可以发布与更新快件信息
4、。4、管理员可以插入、修改与查询报修信息。 5、管理员可以插入与查询学生夜归信息。6、管理员可以查询在校与离校学生信息。7、管理员可以修改管理员密码。2、概念设计(1)概念模型(e-r图):教师班级属于最低总学分班号电话职称姓名工作证号学生学号出生年月性别姓名系系办公室电话系名系代号属于工作隶属关系的分e-r图1n1n1n学生课程选修学号成绩出生年月性别姓名名额上课时间学分课名课序号mn选修联系的分e-r图负责联系的分e-r图班级负责最低总学分班号班主任电话职称姓名工作证号11授课授课联系的分e-r图课程名额上课时间学分课名课序号教师电话职称姓名工作证号1n学生教师系班级课程选修属于属于工作授
5、课学号成绩出生年月性别姓名名额上课时间学分课名课序号最低总学分班号系办公室电话系名系代号电话职称姓名工作证号负责教务管理系统的总e-r图1n1n1n111nmn(2)数据字典:a.数据项编号属性名存储代码类型长度备 注1学号snochar11学生编号2姓名snamechar20学生的姓名,任意合法字符3性别ssexchar2学生的性别4出生年月sbirthdate出生时间间接表示年龄5班号classchar6班级编号6最低总学分totalcredit浮点数4必须修足的学分总数7工作证号tnochar6教师的编号8教师姓名tnamechar20教师的姓名,任意合法的字符9职称titlechar8
6、教师的职位称号10电话telchar11教师的联系电话11系代号dnochar3院系的编号12系名departmentchar10院系的名称13系办公室电话dphonechar11院系办公室的工作电话14课序号cnochar6可区分不同老师教授的同一课程15课名cnamechar20课程的名称16学分credit浮点数2课程的学分17上课时间ctimedatetime上课的时间18名额cnumint课容量19成绩gradeint选课学生某门课的成绩b、数据结构编号数据结构名组 成1学生学号、姓名、性别、出生年月、所属班级班号2教师工作证号、教师姓名、职称、电话、所在系的系号3班级班号、最低总学
7、分、班主任的工作证号、所属系的系号4系系代号、系名、系办公室电话5课程课序号、课名、学分、上课地点、名额、授课教师的工作证号6选课记录课序号、学号、成绩c、数据流编号数 据 流 名输 入输 出1变更学生信息变更信息学生信息2查询学生信息学号学生信息3变更教师信息变更信息教师信息4查询教师信息工作证号教师信息5变更班级信息变更信息班级信息6查询班级信息班号班级信息7变更系信息变更信息系信息8查询系信息系代号系信息9变更课程信息变更信息课程信息10查询课程信息课序号课程信息11选课选课表变更信息选课信息12查询选课信息学号或课序号选课信息13查询授课信息工作证号授课信息d、数据存储数据存储名输入数
8、据流输出数据流说 明 部 分学生信息表修改学生信息学生信息某课程的学生信息教师信息表修改教师授课教师信息班主任信息课程信息表所有开设课程信息学生选择的课程信息教师任教的课程信息选课表学生所有的选课记录学生的选课表随机存取 记录学生本学期所选课程信息班级信息表所有班级信息班级基本信息系信息表所设系的信息系的基本信息e、处理过程处理过程名输入数据流输 出 数 据 流选课选课信息选定课信息登记成绩成绩信息学生所选课程成绩信息修改学生信息更改学生信息修改后的学生信息修改教师信息更改教师信息修改后的教师信息数据维护各信息表的修改信息修改后各信息表(3)数据流图学生教师选课查询选课表查询查询查询查询登记成
9、绩教师信息选课信息系信息选课信息选课信息选课信息选课信息已选课信息选课信息成绩信息成绩信息系信息班级信息学生信息成绩信息班级信息学生信息课程信息表学生信息表课程信息课程信息课程信息课程信息查询学生信息修改教师信息查询教师信息修改学生信息教师信息表学生信息学生信息教师信息教师信息教师信息系信息表班级信息表查询班级信息系信息班级信息系信息总 数 据 流 图3、逻辑结构设计l e-r图向关系模型的转换(关系的码用下横线表出)教师(工作证号,姓名,职称,电话,系代号)代码表示:teacher ( tno, tname, title, tel, dno )此为“教师”实体对应的关系模式。其中1:n联系“
10、工作”与此关系模式合并,dno为外码。存在的函数依赖为tno (tname,title,tel,dno),且不存在多值依赖,所以满足4nf。学生(学号,姓名,性别,出生年月,班号)代码表示:student ( sno, sname, ssex, sbirth, class )此为“学生”实体对应的关系模式。其中1:n联系“属于”与此关系模式合并,class为外码。存在的函数依赖为sno (sname,ssex,sbirth,class),且不存在多值依赖,所以满足4nf。系(系代号,系名,系办公室电话)代码表示:department ( dno, dname, dphone )此为“系”实体对
11、应的关系模式。存在的函数依赖为dno (dname,dphone),且不存在多值依赖,所以满足4nf。课程(课序号,课名,学分,上课时间,名额,工作证号)代码表示:course ( cno, cname, credit, ctime, cnum, tno )此为“课程”实体对应的关系模式。其中1:n联系“授课”与此关系模式合并,tno为外码。存在的函数依赖为cno (cname,credit,ctime,cnum,tno),且不存在多值依赖,所以满足4nf。选课(学号,课序号,成绩)代码表示:sc ( sno, cno, grade )此为m:n联系“选修”所对应的关系模式。sno和cno均为
12、外部码。存在的函数依赖为完全函数依赖(sno,cno) grade,且不存在多值依赖,所以满足4nf。班级(班号,最低总学分,工作证号,系代号)代码表示:class ( class, totalcredit, tno, dno )此为“班级”实体对应的关系模式。其中1:n联系“属于”和1:1联系“负责”与此关系模式合并,tno和dno为外码。该关系模式中存在传递函数依赖:class tno, (tno class),tno dno,可得class dno,故class 不属于3nf。解决方法是将其模式分解为:class ( class, totalcredit, tno )和t-d( tno,
13、 dno),分解后的关系模式满足4nf,并且t-d与teacher的码相同,可合并为同一模式。但是考虑到系统要经常进行系的学生信息查询,此时就不得不对student、class和teacher三个表进行连接查询,而连接是影响查询效率的主要原因,所以取消对class的模式分解。此时class关系模式满足2nf。l 设计用户子模式为了方便程序查询,建立了如下用户视图:1、某系的学生信息视图(学号,姓名,性别,出生年月,班号)2、某系的教师信息视图(工作证号,教师姓名,职称,电话,负责班级)3、某课程的学生成绩单(学号,姓名,班级,成绩)4、教师授课信息表(工作证号,教师姓名,职称,教授课程,学分,
14、上课时间)5、学生已选课表(课序号,课名,学分,授课教师,上课时间,名额)4、物理设计41 选择存取方法1、数据库管理系统自动在每个表的主码上建立索引,通常为b + 树索引。2、在student表sname列上建立stu_name索引,因为查询操作很多都使通过学生姓名进行的。3、在teacher表tname列上建立tea_name索引,因为查询操作很多都使通过教师姓名进行的。42 确定数据库的存储结构1、为了提高系统性能,根据具体情况将数据的易变部分与稳定部分、经常存取部分和存取频率较低部分分开存放。2、dbms产品一般都提供了一些系统配置变量、存储分配参数,根据应用环境确定这些参数值,并且在
15、系统运行时还要根据系统实际运行情况进行调整,以使系统性能最佳。43 评价物理结构根据所选用的dbms,如sql server 2000,从定量估算各种方案的存储空间、存取时间和维护代价入手,对估算结果进行权衡、比较,选择一个较优的合理的物理结构。5、系统实施编写关系模式,载入数据。分期分批地组织数据入库,先输入小批量数据做调试用,待试运行基本合格后,再大批量输入数据,逐步增加数据量,逐步完成运行评价。需要注意的是,要首先调试运行dbms的恢复功能,做好数据库的转储和恢复工作。基本sql语言代码如下:create schema teachaffair authorization gaocreat
16、e 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) not null, title char(8), tel char(11), dno char(3), foreign key (dno) references department(dno) /*表级
17、完整性约束条件,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), /*表级完整性约束条件,tno是外码*/ foreign key (dno) references department(dno) /*表级完整性约束条件,dno是外码*/ );create table student (sno c
18、har(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 table course (cno char(6) primary key, /*列级完整性约束条件,cno是主码*/ cname char(20) not null, credit numeric(2,1), ctime
19、 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(grade=0 and grade=100), primary key (sno, cno), /*主码由两个属性构成,必须作为表级完整性进行定义*/ foreign key (sno) references student(
20、sno) /*表级完整性约束条件,sno是外码*/ on delete cascade /* 当删除student表中的元组时,级连删除sc表中相应的元组*/ on update cascade, /*当更新student表中的sno时,级连更新sc表中相应的元组*/ foreign key (cno) references course(cno) /*表级完整性约束条件,sno是外码*/ on delete no action /* 当删除course表中的元组造成了与sc表不一致时,拒绝删除*/ on update cascade, /*当更新course表中的cno时,级连更新sc表中相
21、应的元组*/ );/*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);/*查询某个系(以gis为例)的学生信息*/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 count(*)from st
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 炎症性肠病与焦虑关联研究-洞察与解读
- 【7道期末】安徽省合肥市瑶海区2025-2026学年第一学期七年级期末考试道德与法治试题
- 2026年云南轻纺职业学院单招职业倾向性考试题库含答案详解(达标题)
- 2026年临沂职业学院单招职业倾向性考试题库附答案详解ab卷
- 2026年临夏现代职业学院单招职业适应性测试题库附参考答案详解(典型题)
- 2026年云南锡业职业技术学院单招职业适应性测试题库及答案详解(网校专用)
- 2026年东营科技职业学院单招职业技能考试题库附答案详解(轻巧夺冠)
- 2026年云南三鑫职业技术学院单招职业倾向性测试题库及一套答案详解
- 暨南大学就业指导中心
- 2026年云南省楚雄彝族自治州单招职业适应性考试题库带答案详解(能力提升)
- 糖尿病酮症酸中毒合并急性胰腺炎护理查房
- 物料分级现场管理办法
- 水上安全救援技术培训教材
- 高中面试实战:新面试题目及应对策略
- 苏教版小学三年级上数学口算题卡
- 报废汽车安全生产管理制度
- 会议摄影拍摄教学课件
- 俄国边境管理制度
- GB/T 7357-2025船舶电气设备系统设计保护
- 江苏省2024年中职职教高考文化统考数学试卷及答案
- 传播学纲要(第3版)课件 第四章 人际传播
评论
0/150
提交评论