《学籍管理系统实验报告.docx》由会员分享,可在线阅读,更多相关《学籍管理系统实验报告.docx(10页珍藏版)》请在优知文库上搜索。
1、加 UNI尼数据库课程设计学籍管理系统安徽大学计算机科学与技术1班陈斌E113140792023-9-6目录一、实验目的及要求11 .实验目的12 .实验要求1二、实验环境2三、实验内容与步骤23 .系统需求分析24 .概念结构设计45 .逻辑结构设计56 .数据库与应用系统的实施和维护7四、总结9目的及要求1 .实验目的(1)通过本次课程设计,熟练掌握一种开发语言(如C#)和一种数据库系统软件(如SQLserver2023)的使用。(2)加深对软件工程的理解,训练编写程序的良好习惯。包括:认真编写需求分析文档、做好系统功能和数据库设计、学会自己进行程序的算法、数据结构设计。(3)培养良好的程
2、序设计风格(模块划分、接口设计、程序界面、应用系统设计)和习惯(程序备份、版本更新与控制),提高软件测试、调试的能力与技巧。(4)通过本次课程设计,应该到达具有独立完成小型应用系统设计的能力,具备编写较为标准的软件设计文档的能力。2 .实验要求设计本系统模拟学校学籍管理内容,包括学生入学登记、学生选课、考试成绩登记、补考处理及教师教学质量分析统计等,简化的系统需要管理的情况如下:(1)可随时查询出不同系及各系教师与各系学生情况,系、教师与学生各反映如下情况:系:系号、系名、系负责人、专业数等教师:工号、姓名、性别、职称、工龄、出生年月、根本工资等学生:学号、姓名、性别、年龄等(2)为简单起见教
3、师与学生区分系别,而课程不分系,课程需反映如下信息:课程代号、课程名、课程数、必修课、学分。(3)学生入学时新生需录入登记,登记后即可选课学习课程(一学期约20学分)。(4)一门课只由一位教师上,一位教师可上多门课,满30人才开课。(5)学生选每门课有个成绩,假设成绩不及格那么补考后还需记录补考成绩。二、实验环境本系统开发平台及运行环境如下:系统开发平台:MicrosoftVisualStudio2023系统开发语言:C#数据库管理软件:SQLServer2023运行平台:WindowslO教育版运行环境:Microsoft.NETFrameworkSDKv4.5三、实验内容与步骤1.系统需求
4、分析(1)信息要求:指用户需要从数据库中获得信息的内容与性质。数据库中需要存储哪些数据。本系统是针对学生学籍管理,主要涉及教师信息、学生选修课程信息、学校开设的课程信息、学校的院系信息、教师开设课程信息、学生选修课程成绩信息等多种数据信息。用户名和密码信息:字段名数据类型长度主键否描述Usernamevarchar16是用户名Passwordvarchar16密码Userclasschar1用户类别学生信息:字段名数据类型长度主键否描述Sidvarchar16是学号Snamevarchar16姓名Ssexchar1性别Sageint年龄Sdepvarchar16所属系别Stelchar11SI
5、Dcardchar18身份证号教师信息:字段名数据类型长度主键否描述Tidvarchar16是工号Tnamevarchar16姓名Tsexchar1性别Tprotitlevarchar16职称Tworktimeint工龄Tbirthdate出生年月Tsalfloat工资Tdepvarchar16所属系别Ttelchar11TIDcardchar18身份证号院系信息:字段名数据类型长度主键否描述Didvarchar16是系号Dnamevarchar64系名Dchiefvarchar16负责人Dmajorcountint专业数Dareavarchar64地址课程信息:字段名数据类型长度主键否描述C
6、idvarchar16是课程代号Cnamevarchar32课程名Ccountint课程数Ccompulsorychar1是否必修Ccreditfloat学分Tidvarchar16授课教师学生选课信息:字段名数据类型长度主键否描述Sidvarchar16是学号Cidvarchar16课程代号Fscoreint正考成绩Sscoreint补考成绩课程选修人数:字段名数据类型长度主键否描述Cidvarchar16是课程代号Numbersint选修人数(2)处理要求:用户需要完成什么处理功能,对处理的响应时间有什么要求(给出功能模块图)。学籍管理系统主要满足三类用户的要求,这三类用户分别是教务处的系
7、统管理员、教师和学生。系统管理员能对学生信息、教师信息、课程信息等进行有效的管理和维护,包括增加、删除、修改等根本的维护功能和灵活的查询功能;教师和学生能够对个人根本信息、授课、选课所涉及的有关信息进行查询、更新等操作。具体的需求分析如下:1)系统管理员:维护学生的个人根本信息维护教师的个人根本信息维护课程信息新生入学登记2)学生用户:查询和修改个人信息进行选课操作查询当前所选课程信息和以前所选课程的成绩信息3)教师用户:查询和修改个人信息课程结束后,教师对所教授的学生进行成绩登记查询教学安排功能模块图如下所示:图1功能模块图(3)平安性与完整性要求。数据库的平安性是指保护数据库,防止不合法的
8、使用所造成的数据泄露和破坏。数据库系统中保证数据平安性的主要措施是进行存取控制,即规定不同用户对于不同数据对象所允许执行的操作,并控制各用户只能存取他有权(操作权力)存取的数据。存取控制机制分为自主存取控制(DAC)与强制存取控制(MAC),主要包括两局部:一是定义用户权限,并将用户权限登记到数据字典中;二是合法权限检查。数据库完整性指数据的(逻辑而非物理)正确性和相容性。为了防止数据库中存在不合语义的数据,防止错误数据的输入和输出。数据库完整性技术包括完整性约束条件与完整性检查两局部。完整性约束条件指为维护数据库的完整性,DBMS提供加在数据库数据之上的语义约束条件,作为数据库模式的一局部存
9、入数据库。完整性检查意味检查数据库是否满足完整性约束条件的机制。完整性约束条件作用的对象可以是关系、元组、列三种。其中列约束主要是列的类型、取值范围、精度、排序等的约束条件。元组的约束是元组中各个字段间的联系的约束。关系的约束是假设千元组间、关系集合上以及关系之间的联系的约束。完整性约束条件涉及这三类对象,其状态可以是静态的,也可以是动态的。完整性约束条件一般分为实体完整性、参考完整性自定义完整性。定义实体完整性约束条件要考虑修改关系中主码的问题;定义参考完整性约束条件要考虑外码能否接受空值问题、在被参照关系中删除元组的问题(级联删除或受限删除)、在参照关系中插入元组时的问题。2.概念结构设计
10、根据分析,学籍管理系统包含学生、教师、院系及课程4个实体,各个实体的局部E-R图如下所示,其中学号是学生实体的主码,工号是教师实体的主码,系号是院系实体的主码,课程号是课程实体的主码,负责人是院系实体的外码(参照的是教师实体的工号)。图2学生实体及属性图3教师实体及属性图4院系实体及属性图5课程实体及属性(1)逐一设计分ER图,合并分ER图,生成根本ER图。根据需求分析的结果可以看到,在学籍管理系统中,一个学生可以选择多门课程,一个教师可以教授多门课程,一门课程可以被多个学生选修,只能由一位教师教授。由此可知,学生、教师、课程三者之间通过选课进行联系。教师和学生区分系别,因此学生与院系,教师与
11、院系均存在联系。由以上分析可得各个局部的E-R图,如下所示(忽略各个实体的属性):图6学生与院系之间的E-R图图7教师与院系之间的E-R图图8学生与课程之间的E-R图图9学生与教师之间的E-R图10与I旬E-R(2)假设在合并中存在属性冲突、命名冲突以及结构冲突,给出解决方法,假设存在不必要的冗余,那么消除并给出设计方法。合并分E-R图并不是单纯地将各个分E-R图画在一起,而是必须消除各个分E-R图中的不一致,以形成一个能为全系统中所有用户共同理解和接受的统一的概念模型。各个分E-R图之间的冲突包括3种:属性冲突、命名冲突以及结构冲突。经过分析,得到学生、教师、院系和课程3者之间可以通过选课这
12、个联系进行关联。因此,合并各个分E-R图,生成根本E-R图,如下所示:图U学籍管理系统根本E-R图(3)根本ER图中要求标明主码、外码、联系类型。根本E-R图中,各实体的主码用下划线加粗显示,外码倾斜加粗表示,联系类型说明于连接线上。3.逻辑结构设计(1)给出由ER得到的关系模型,并注明转换过程中应用的规那么。E-R图向关系数据模型转换的根本规那么如下:1) 一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键;2) 一不联系转化为一个关系模式,与该联系相连的各个实体的键以及联系的属性为该关系的属性,该关系的键分为3种情况:1:1联系:任一相连实体的键都可以作为该关系的主
13、键。Im联系:n端(多端)实体的键作为该关系的主键。m:n联系:各端实体的键的组合为该关系的主键。其中,1:1联系可以和联系的任意一端实体的关系模式合并,将联系的属性和另一端关系模式的键参加该关系模式即可;l:n联系那么需要和多端的关系模式合并,在多端关系模式中参加联系的属性和1端关系模式的键即可;m:n联系不能与实体合并,必须转换为单独的关系模式。根据E-R图向关系数据模型转换的相关规那么,将图11所示的E-R图转换为关系数据模型,得到学籍管理系统的关系模式如下:教师(工,羞令,姓名,性别,职称,工龄,出生年月,工资,身份证),应用规那么2卜Ln联系。学生(生号,姓名,性别,年龄,身份证),
14、应用规那么2)l:n联系。院系(系号,负责人工号,系名,专业数,地址),应用规那么2)41:1联系。课程课程代号,授课教师工号,课程名,课程数,是否必修,学分),应用规那么2)-Ln联系。选修(学号,课程号,正考成绩,补考成绩),应用规那么2)-m:n联系。(2)数据模型的优化。数据库的逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当地修改、调整数据模型的结构,这就是数据模型的优化。关系数据模型的优化通常以标准化理论为指导。(3)确定数据依赖。分别写出每个关系内部属性的以及不同关系模式属性间的数据依赖。根据需求分析可知:1 .教师关系模式的数据依赖:工号。系号,工号-姓名,工号-性别,工号-职称,工号工龄,工号。出生年月,工号-工资,工号,工号-身份证;2 .学生关系模式的数据依赖:学号系号,学号姓名,学号-性别,学号