数据库设计案例_第1页
数据库设计案例_第2页
数据库设计案例_第3页
数据库设计案例_第4页
数据库设计案例_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学生选课管理系统

数据库设计1/44需求分析学生选课管理业务,包括4个主要部分:学生学籍及成绩管理、制定教学计划、学生选课管理以及教学调度。各部分详细内容:学籍及成绩管理包括:各院系教务员完成学生学籍注册、毕业、转学等处理,各讲课教师完成所讲讲课成绩录入,然后教务员进行学生成绩审核认可。制定教学计划包括:由教务部门完成指导性教学计划、培养方案确实定,开设课程注册和调整。学生选课包括:学生根据开设课程和培养计划(和自己情况)选择自己本学期所选修课程,教务员对学生所选修课程确实认处理。(注意:一般必修课程是由教务员统一处理,只有辅修课程才通过学生选择过程)执行教学调度包括:教务员根据本学期所开设课程、教师上课情况以及学生选课情况完成排课、调课等。2/443/444/44需求分析成果:数据流5/446/447/448/449/44需求分析成果:数据字典由于本实例包括数据字典项目较多,此处列举"P3选课管理"处理功能中包括几个对象加以描述。10/44数据项序号数据项数据对象说明数据组成1学号1{英文|数字}10入学年号+班级序号+次序号2选学时间4{数字}-2{数字}-2{数字}年+月+日3课程名称1{汉字|英文|数字}20

4班级号1{英文|数字}6

5教师编号1{英文|数字}10

6开课学年4{数字}

7开课学期{1|2}

8课程说明0{汉字|英文|数字}100

英文=[‘a’…’z’|’A’…’Z’]数字=[‘0’…’9’]11/4412/44数据流

序号数据流名起源流向组成说明1(学生)教学计划查询祈求需要选课学生P3.1班级号或学号注意查询类别区分2教学计划数据S2教学计划信息P3.1班级号+课程编号+开课学年+开课学期

3学生课程选择数据P3.2S5学生选课信息课程编号+年号+学期号

4选课信息查询教务员P3.3班级号+课程号+学年+学期

13/4414/44数据存放

序号数据文献文献组成关键标识组织1S2教学计划信息班级号+课程编号+开课学年+开课学期所有按开课学年,学期,班级降序2S3学生选课信息学号+课程编号+开课学年+开课学期所有按开课学年,学期,班级降序3S5课程数据清单课程编号+课程名称+课程说明课程编号课程编号排序15/4416/44处理过程

序号处理过程编号输入输出处理逻辑1查询教学计划P3.1学生选课查询祈求+教学计划数据针正确教学计划针对选课祈求进行查询2选课信息录入P3.2针正确教学计划学生课程选择数据根据学生对应教学计划选择课程3选课信息查询P3.3选课信息查询+选课数据没经确认选课根据班级和课程号检查对应未确认选课清单清单4选课信息确认P3.4选课审核+没经确认选课经确认选课信息选择选课清单进行确认17/44数据项序号数据项数据对象说明数据组成1学号1{英文|数字}10入学年号+班级序号+次序号2选学时间4{数字}-2{数字}-2{数字}年+月+日3课程名称1{汉字|英文|数字}20

4班级号1{英文|数字}6

5教师编号1{英文|数字}10

6开课学年4{数字}

7开课学期{1|2}

8课程说明0{汉字|英文|数字}100

英文=[‘a’…’z’|’A’…’Z’]数字=[‘0’…’9’]18/4419/44概念设计20/44实体由前面分析得到数据流图和数据字典,能够抽象得到实体主要有5个:学生、教师、课程、院系、班级。学生实体属性有:学号、姓名、出生年月、性别、电话、系编号。教师实体属性有:教师编号、教师姓名、性别、职称、出生年月、电话、电子邮件。课程实体属性有:课程编号、课程名称、课程学时、课程学分。院系实体属性有:系编号、系名称、责任人。班级实体属性有:班级编号、班级名称。21/44“学生-课程”选课关系22/44“教师-课程”实体间关系23/44“学生-班级”组成关系24/44“班级-系”属于关系25/44“教师-系”实体间关系26/4427/44逻辑设计28/44E-R图模型转化为关系数据模型教师(教师编号,教师姓名,性别,职称,电话,系编号)课程(课程编号,课程名称,课程学分,学时)讲授(教师编号,课程编号,课程编号,开课年度,开课学期)系(系编号、系名称、系主任)班级(班级编号,班级名称,系编号)学生(学号,姓名,性别,出生年月,电话,班级编号)学生选课(课程编号,学号,教师编号,开课年度,开课学期,成绩)29/44数据库中表清单数据库表名关系模式名称备注Teacher教师教师信息表Student学生学生学籍信息表Course课程课程基本信息表Class班级班级基本对照表StuCourse学生选课选课-讲课合成信息表Department系院系基本信息表Schedule教学计划教学计划安排表30/44学生信息表Student字段信息列表字段名称含义属性类型长度备注Snum学号char10主键,也能够作为登录标识Sname学生姓名nvarchar6NotnullSsex性别nchar2男、女(M/F)Sbirth出生年月datetimeClnum班级号varchar6所在班级编号,外键

Classes.ClnumEmail电子邮件nvarchar40支持汉字邮箱Passwd密码varchar20密码,能够是数字英文和符号等Status状态nvarchar8表达在校或毕业或转学等31/44教师基本信息表Teacher字段信息列表字段名称含义属性类型长度备注Tnum教师编号char10主键,也能够作为登录标识Tname教师姓名nvarchar6NotnullTsex性别nchar2男、女(M/F)Title职称nvarchar8专家、副专家…Tphone联系电话char15Email电子邮件nvarchar40支持汉字邮箱Tbirth出生年月datetimePasswd密码varchar20密码,能够是数字英文和符号等Dnum系编号varchar6外键

Depart.Dnum32/44系基本信息表Depart字段信息列表字段名称含义类型长度备注Dnum系编号varchar6主键Dname系名称nvarchar10NotnullDirector系主任varchar10外键

Teacher.Tnum33/44班级信息表Classes字段信息列表字段名称含义类型长度备注Clnum班级编号varchar6主键Cname班级名称nvarchar10NotnullDesscription班级说明nvarchar100如专业,本专科Dnum系编号varchar6外键

Depart.Dnum34/44课程基本信息Course字段信息列表字段名称含义类型长度备注Cnum课程编号varchar10主键Cname课程名称varchar20NotnullCredit学分numeric3,1Period学时int335/44学生选课信息表StuCourse字段信息列表字段名称含义类型长度备注Snum学号varchar10外建

Student.SnumCnum课程编号varchar10外建

Course.CnumTnum教师编号varchar10外建

Teacher.TnumYnum开课年度int4例如:2023Term开课学期int11|2Grade成绩numeric4,1{0…100}注意考查课数字化CAuditor选课审核者nvarchar6直接取其姓名Gauditor成绩审核者nvarchar6直接取其姓名36/44教学计划信息表Schedule字段信息列表字段名称含义类型长度备注Cnum课程编号varchar10外建

Course.CnumClnum班级编号varchar6外建

Classes.ClnumYnum开课年度int4例如:2023Term开课学期int1如1|2针对一种学年只有两个学期情形37/44物理设计使用哪种类型磁盘硬件,如RAID(独立磁盘冗余阵列)设备;数据在磁盘上如何放置即数据分派策略;从访问性能角度采取合适索引技术和设计详细索引项;以及基于特定数据库有关参数配备以使数据库较好地运行。38/44建立索引考虑到本系统主要业务目标是学生选课,此过程访问最频繁功能是集中在教学计划查询和选课信息表查询上以及学生学籍信息查询上。教学计划制定基本上是一次为主,基本查询功能是基于学年、学期和班级联合条件进行,因此能够考虑在Schedule表上建立聚簇索引:CreateClusteredIndexScheduleIndexonSchedule(Clnum,Ynum,Term)39/44建立索引学生学籍信息查询基本上集中在学号上,因此能够建立聚簇索引:CreateClusteredIndexSnumIndexonStudent(Snum)40/44建立索引对于选课信息由于聚集关系以及整合成果,该表上变更也是比较频繁,因此能够考虑建立一般索引:CreateIndexStuCourseIndexonStuCourse(Snum,Cnum,Ynum,Term)41/44数据库实行42/44建立数据库CREATEDATABASE学生选课ONPrimary(NAME=css_Data1,FILENAME='C:\css\data\csmain.mdf'),(NAME=css_Data2,FILENAME='D:\css\data\cssecd1.ndf'),(NAME=css_Data3,FILENAME='E:\css\data\cssecd2.ndf')LOGON(NAME=css_Log,FILENAME='F:\css\data\cslog.ldf')43/44建立数据表--创建学生基本信息表StudentCREATETABLEStudent(Snumvarchar(10)PRIMARYKEY,Snamenvarchar(6)notnull,Ssexnchar(2),Sbirthdate

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论