收藏 分销(赏)

学生学籍管理系统数据库系统SQL样本.doc

上传人:二*** 文档编号:4514402 上传时间:2024-09-26 格式:DOC 页数:39 大小:308.52KB
下载 相关 举报
学生学籍管理系统数据库系统SQL样本.doc_第1页
第1页 / 共39页
亲,该文档总共39页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、学生学籍管理系统(数据库系统)1 设计内容和规定1.1设计背景随着国内教诲体制改革进一步进行,教诲系统得到了前所未有发展。学生管理正在逐渐迈向管理信息当代化。但是国内学生管理信息化水平还处在初级阶段,重要体当前对学生交费管理、学生档案管理还是采用原有人工管理方式。学校规模不断扩大,学生数量急剧增长,关于学生各种信息量也成倍增长。由于大学生类别和专业设立多样化,大学生学籍管理从来是非常繁琐和复杂工作。面对庞大信息量,这时人工管理几乎无法实现,在这种状况下用数据库进行管理变尤为必要,这可以发挥计算机优势,就需要有学生信息管理系统来提高学生管理工作效率.通过这样系统,可以做到信息规范管理,科学记录和

2、迅速查询,从而减少管理方面工作量和减少人为错误。1.2开发环境本学生学籍管理系统(数据库系统)开发与运营环境如下:开发环境:Windows XP辅助工具:PowerDesigner Trial 11数据库管理系统:SQL Server 运营环境:Windows /XP/1.3内容和规定1.3.1系统目的设计 使得学生学籍管理工作更加清晰、条理化、自动化。 很容易地完毕新生信息输入、老生信息备份、毕业学生信息可以很容易地保存。 当学生需要查询成绩时,可以很简朴地将其需要信息从数据库中查找出来并可以打印查询成果。 随着当今网络技术发展,提供网络在线查询功能,可觉得毕业生提供更多就业机会。1.3.2

3、系统功能规定(1)学生基本信息系统 可以完毕新、老生信息输人、修改、插人、删除等工作。 可以按照特定信息进行查找,并按照特定规定进行排序。 可以对老生信息进行备份,以便日后查询。 可以对学生信息进行打印输出。 提供详细协助文献和系统维护功能。(2)学生成绩管理系统 此某些功能如下: 学生成绩输入、修改、删除等基本操作。 成绩综合记录功能,涉及学生成绩按照不同条件进行排名。管理人员可以选取不同排序条件,并可以将排序成果进行打印输出。 计算各班总分和平均分,并按照平均分将各班成绩进行排序。 记录不及格考生信息,依照条件拟定是重修还是补考。 学生奖励记录,自动生成每班获得奖学金同窗信息,并可以将奖学

4、金提成不同级别,以及所得奖学金数目。 本系统可以在单机上运营,也可以应用在网络上供在线查询成绩和其她某些学生信息(此功能选做人提供应学生进行查询系统和提供应教务处使用系统,在不同顾客使用时,应当会有不同使用权限。 提供详细协助文献。由于数据库内信息会诸多,注意数据库表格设计,使得学生查询基本信息或学习成绩时使用时间较短。按照数据库系统开发环节进行数据库概念构造设计、逻辑构造设计、物理构造设计。系统功能模块设计图如图所示。图 1-1 系统功能模块设计图2 需求分析2.1 引言 进行数据库设计一方面必要精确理解也分析顾客需求(涉及数据和解决)。目是为学籍管理数据库系统设计打下牢牢基本,是数据库开发

5、重要文献根据,重要为数据库设计人员使用,是顾客和系统分析员项目根据文献。作为“地基”需求分析与否做得充分与精确,它决定了在其上构建数据库大厦速度和质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。本系统开发是设计一种学生学籍管理系统(数据库系统)。2.2 顾客需求本系统是针对高等院校学生学籍管理,因而学籍管理系统顾客涉及系统管理员、教师和学生。重要涉及系部信息、班级信息、任课教师信息、学生信息、课程信息以及选课记录和成绩等各种数据信息。实现详细功能如下:l 基本信息管理系统管理员负责对各种基本信息录入、修改、删除等操作。l 学生成绩管理系统管理员负责对学生成绩录入、修改、删除等操作,学

6、生可以查询各科成绩。l 信息查询记录学生可以查询基本信息和各科考试成绩,教师可以查询基本信息和授课信息,系统管理员负责把教师提交学生成绩进行管理,计算总成绩和平均成绩,记录不及格学生信息和获得奖学金学生信息,最后再输出所有信息。l 毕业生信息管理系统管理员负责计算毕业学生在学校期间所修课程总学分,并进行审核,最后输出登记表和名册。l 系统顾客管理系统管理员负责用不同权限来限制不同顾客对系统使用。以上是顾客对系统基本功能规定,此外顾客还规定系统效率要高,查询速度要快,比较小冗余,易维护,具备较高数据安全性。2.3 划分功能模块依照系统功能需求分析和高等院校学籍管理特点,通过模块化分析得到如下图1

7、-1所示系统功能模块构造图。学籍管理系统基本信息管理毕业生信息管理学生成绩管理系统顾客管理信息查询记录基本信息删除基本信息修改基本信息录入学生成绩删除学生成绩修改学生成绩录入修改密码输出有关信息记录学生成绩计算学生成绩学生成绩查询基本信息查询输出名册审核资格计算学分协助信息图 2-1 系统功能模块图2.4 数据字典2.4.1 数据项数据字典是系统中各类数据描述集合,是进行详细数据收集和数据分析所获得重要成果,数据字典是对系统所用到所有表构造描述,学籍管理重要数据见下表。表 2.1 教师基本信息表序号字段别名数据类型数据长度码1tno学号char10Y2tname姓名varchar10N3tse

8、x性别Char2N4profess职称varchar10N5dname所属院系varchar8N6tel电话intN表 2.2 学生基本信息表序号字段别名数据类型数据长度码1sno学号varchar10Y2sname姓名varchar10N3ssex性别Char2N4birthday出生日期timestamp20N5symbol政治面貌varchar8N6Id身份证号varchar20N7Intime入学时间varchar20N8birthplace籍贯varchar10N9homeaddr家庭住址varchar30N10postcode邮政编码intN表 2.3 专业信息表序号字段别名数据类

9、型数据长度码1mno专业号char10Y2sno学号varchar10N3mname专业名char10N4intime入学时间datetimeN表 2.4 毕业信息表序号字段别名数据类型数据长度码1gno毕业证编号char10Y2sno学号varchar10N3sname姓名varchar10N4ssex性别char2N5dname所属院系varchar10N6intime入学时间datetimeN7ycredit已修学分floatN8xcredit需修学分floatN表 2.5 院系信息表序号字段别名数据类型数据长度码1dmpno院系号varchar10Y2dname院系名称varchar1

10、0N3dmphead院长名varchar20N表 2.6 课程信息表序号字段别名数据类型数据长度码1cno课程号varchar5Y2cname课程名varchar15N3credit学分smallintN表 2.7 学生选课信息表序号字段别名数据类型数据长度码1sno学号varchar10Y2cno课程号varchar5Y3grade成绩floatN表 2.8 教师授课信息表序号字段别名数据类型数据长度码1cno课程号varchar5Y2tno教工号char10Y3ctime学时smallintN2.4.2数据构造数据构造反映了数据之间组合关系。一种数据构造可以由若干个数据项构成,也可以由若干

11、个数据构造构成,或若干个数据项和数据构造混合构成。通过数据项和顾客需求分析,我对本系统一共分了5个组,详细如下表所示:表 2.9 数据构造表数据构造名含义阐明构成某些学生基本信息管理描述学生基本信息学号+姓名+性别+出生日期+身份证号+入学时间+政治面貌+家庭住址+籍贯+邮政编码+民族教师基本信息管理描述教师基本信息教工号+姓名+性别+职称+所属院系+电话学生、教师有关信息管理描述学生选课信息,毕业信息,专业、院系信息,教师授课信息,院系信息学号+课程号+成绩课程号+教工号毕业证编号+学号+姓名+性别+身份证号+所属院系+入学时间+已修学分+需修学分学生成绩管理描述学生平均成绩、总成绩计算,记

12、录有关信息学号+课程号+成绩系统管理描述顾客修改密码,协助信息2.4.3数据流数据流是数据构造在系统内传播途径。通过对顾客需求分析,以及数据项和数据流设计,得出了相应数据流描述如下表所示:1、数据流定义表表 2.10 数据流定义表编号数据流名构成流量备注01学生信息学号+姓名+性别+出生日期+身份证号+入学时间+政治面貌+家庭住址+籍贯+邮政编码+民族大学生基本信息02教师信息教工号+姓名+性别+职称+所属院系+电话普通教师基本信息03学生成绩学号+姓名+性别+学号+课程号+成绩大学生详细信息04科目成绩学号+课程号+成绩大学生考试成绩05各门成绩学号+课程号+成绩课程号+课程名+学分大同上0

13、6查询成果科目成绩+各门成绩大各种信息07记录分析科目成绩+各门成绩大学生奖励2、外部项定义表表 2.11 外部项定义表编号名称输入数据流输出数据流备注1学生处01重要用于录入学生信息2学生06重要用语学生查询信息和成绩3教师03重要用于教师提交成绩4教务员06/07重要用于输出查询和记录信息成果2.4.4数据存储数据存储是数据构造停留或保存地方,也是数据流来源和去向之一。通过数据项、数据构造和数据流设计,本系统一共选用了三个数据存储,详细对数据存储描述普通如下表所示:表 2.12 数据存储表编号数据存储名输入数据流输出数据流数据量存取方式A1学生有关信息01大批解决、顺序检索A2教师有关信息

14、0302普通批解决、顺序检索A3学生成绩单06,07大批解决、更新、顺序检索2.4.5解决过程解决过程详细解决逻辑普通用鉴定表或鉴定树来描述。对于本系统用于学生学籍管理一共设计了四种解决办法,详细解决方式如下表所示:表 2.13 数据解决过程表编号名称输入数据流输出数据流备注B1插入修改01,02,0301,02,03插入学生信息和教师信息B2更新修改01,02,0301,02,03更新学生信息和教师信息B3删除修改01,02,0301,02,03删除学生信息和教师信息B4记录分析05,0605,06记录学生信息和成绩3 概念构造设计概念构造设计是整个数据库设计核心,它通过对顾客需求进行综合、

15、归纳与抽象,形成独立于详细DBMS概念模型。3.1数据流图数据流图表达了数据和解决关系,依照顾客需求分析和高校学籍管理系统需求,得出如下图1-1所示学籍管理数据流图。学生教师管理员学生记录成绩毕业送进信息录入查询计算记录更新录入新生?学生信息批准?成绩单批准?核对信息学生名单提交申请审核信息合格图 3-1 学籍管理系统数据流图3.2 系统E-R图1 对于学生信息管理,咱们可以将学生实体抽象出来,学生属于学院可以将学院作为一种实体,学生所属专业和毕业信息都将可以作为一种实体。图 3-2 学生实体E-R图图 3-3 院系实体E-R图图 3-4 专业实体E-R图图 3-5 毕业实体E-R图在学生信息

16、管理中存在这样关系:选取(一种学生只能选取一种专业,而一种专业可以供各种学生选取,故是多对一关系)、学习(一种学生只能在一种院系学习,而一种院系可以供各种学生学习,故是多对一关系)。图 3-6 学生关系E-R图2 对于教师信息管理,咱们可以将教师实体抽象出来,教师属于学院可以将学院作为一种实体。图 3-7 教师实体E-R图在教师信息管理中存在这样关系:拥有(一种教师只能在一种院系工作,而一种院系可以供各种各种教师工作,故是多对一关系)。图 3-8 教师关系E-R图3 对于教务信息管理,咱们可以将课程实体抽象出来。图 3-9 课程实体E-R图在教务信息管理中存在这样关系:毕业(一种学生拥有一种毕

17、业信息,而一种毕业信息只属于一种学生,故是一对一关系)、选修(一种学生可以选修多门课程,而一门课程可以被各种学生选修,故是多对多关系)、开设(一种专业可以开设多门课程,而一门课程可以被各种专业选取,故是多对多关系)、授课(一门课程可以被各种教师讲授,而一种教师可以讲授多门课程,故是多对多关系)。 图 3-10 教务关系E-R图以上是本系统中基本实体和关系,本系统是将其分步找出来加以描述,下面是本系统总体E-R图:图 3-11 学籍管理系统E-R图3.3 概念模型概念模型是在对顾客需求分析之后,通过画出本系统抽象出E-R图,由概念模型辅助工具PowerDesigner11进行设计,通过详细地设立

18、和绘图,最后就形成了如下所示概念模型图,生成概念构造就能真实、充分地反映现实世界,涉及事物和事物之间联系,能满足顾客对数据解决规定,是对现实世界一种真实模型。图 3-12 学籍管理系统概念模型图4 逻辑构造设计逻辑构造设计就是把概念构造设计阶段设计好基本E-R图转换为与选用DBMS产品所支持数据模型相符合逻辑构造。设计逻辑构造普通分为3步进行:(1)将概念构造转换为普通关系、网状、层次模型;(2)将转换来关系、网状、层次模型向特定DBMS支持下数据模型转换;(3)对数据模型进行优化。4.1 关系模型将E-R图转换为关系模型事实上就是要奖实体型、实体属性和实体型之间联系转换为关系模式,这种转换普

19、通遵循如下原则:一种实体型转换为一种关系模式。实体属性就是关系属性,实体码就是关系码。对于实体型间联系则有如下不同状况:(1)一种1:1联系可以转换为一种独立关系模式,也可以与任意一端相应关系模式合并。如果转换为一种独立关系模式,则与该联系相连个实体码以及联系自身属性均转换为关系属性,每个实体码均是该关系侯选码。如果与某一端实体相应关系模式合并,则需要在关系模式属性中加入另一种关系模式码和联系自身属性。(2)一种1:n联系可以转换为一种独立关系模式,也可以与n端相应关系模式合并。如果转换为一种独立关系模式,则与该联系相连个各实体码以及联系自身属性均转换为关系属性,而关系码为n端实体码。(3)一

20、种m:n联系转换为一种关系模式。与该联系相连个实体码以及联系自身属性均转换为关系属性,各实体码构成关系码或关系码一某些。(4)3个或3个以上实体间一种多元联系可以转换为一种关系模式。与该多元联系相连各实体码以及联系自身属性均转换为关系属性,各实体码构成关系码或关系码一某些。(5)具备相似码关系模式可合并。将概念构造设计阶段设计好基本E-R图转换为关系模型,如下所示:n 学生(学号,专业号,院系号,姓名,性别,出生日期,身份证号,入学时间,政治面貌,家庭住址,籍贯,邮政编码,民族),此为学生实体相应关系模式。n 教师(教工号,姓名,性别,职称,所属院系,电话),此为教师实体相应关系模式。n 毕业

21、(毕业证编号,学号,姓名,性别,身份证号,所属院系,入学时间,已修学分,需修学分),此为毕业实体相应关系模式。n 课程(课程号,课程名,学分),此为课程实体相应关系模式。n 院系(院系号,院系名称,院长名),此为院系实体相应关系模式。n 选修(学号,课程号,成绩),此为选修关系相应关系模式。n 授课(课程号,教工号,学时),此为教师授课关系相应关系模式。n 开设(专业号,课程号),此为专业开设课程关系相应关系模式。4.2 物理模型将生成概念模型通过单击PowerDesigner11工具菜单栏上Tools选项,再选取Generate Physical Data Model选项,就可以转换为物理模

22、型,生成最后成果详细如下图所示:图 4-1 学籍管理系统物理模型图5 物理构造设计与功能实现5.1 物理构造设计数据库物理设计就是为一种给定逻辑数据模型选用一种最适合应用规定物理构造过程。物理构造设计阶段实现是数据库系统内模式,它质量直接决定了整个系统性能。因而在拟定数据库存储构造和存取办法之前,对数据库系统所支持事务要进行仔细分析,获得优化数据库物理设计参数数据库物理设计普通分为两步:(1)拟定数据库物理构造,在关系数据库中重要指存取办法和存取构造;(2)对物理构造进行评价,评价重点是时间和空间效率。5.1.1 拟定数据库存储构造由于本系统数据库建立不是很大,因此数据存储采用是一种磁盘一种分

23、区。5.1.2 存取办法和优化办法存取办法是迅速存取数据库中数据技术。数据库管理系统普通都是提供各种存取办法。惯用存取办法有三类。第一类是索引办法,当前重要是B+树索引办法;第二类是聚簇办法;第三类是HASH办法。数据库索引类似书目录。在书中,目录容许顾客不必浏览全书就能迅速地找到所需要位置。在数据库中,索引也容许应用程序迅速找到表中数据,而不必扫描整个数据库。在书中,目录就是内容和相应页号清单。在数据库中,索引就是表中数据和相应存储位置列表。使用索引可以大大减少数据查询时间。但需要注意是索引虽然能加速查询速度,但是为数据库中每张表都设立大量索引并不是一种明智做法。这是由于增长索引也有其不利一

24、面:一方面,每个索引都将占用一定存储空间,如果建立聚簇索引(会变化数据物理存储位置一种索引),占用需要空间就会更大;另一方面,当对表中数据进行增长、删除和修改时候,索引也要动态地维护,这样就减少了数据更新速度。5.2 功能实现完毕数据库物理设计之后,设计人员就要用RDBMS提供数据定义语言和其她实用程序将数据库逻辑设计和物理设计成果严格描述出来,成为DBMS可以接受源代码,再通过调试产生目的模式。然后就可以组织数据入库,最后就在此基本上编写各个表有关触发器和存储过程。5.2.1 触发器触发器是顾客定义在关系表上一类由事件驱动特殊过程。一旦定义,任何顾客对表增、删、改操作均由服务器自动激活相应触

25、发器,在DBMS核心层进行集中完整性控制。由于本系统触发器比较多,在这里我只写出了其中一某些触发器,详细如下所示。(1)数据更新-CREATE TRIGGER scupdate ON dbo.student /建立学生信息表更新触发器FOR UPDATE ASUPDATE SC /更新学生选课表SCSET SNO = (SELECT SNO FROM INSERTED) /将SC表中学号改成学生表改后WHERE SNO = (SELECT SNO FROM DELETED);/更改相应学生学号-CREATE TRIGGER graduateupdate ON dbo.student /建立学生

26、信息表更新触发器FOR UPDATE ASUPDATE GRADUATE /更新学生毕业信息表GRADUATESET SNO = (SELECT SNO FROM INSERTED) /将GRADUATE表中学号改成学生表修改后WHERE SNO = (SELECT SNO FROM DELETED);/更改相应学生学号-CREATE TRIGGER majorupdate ON dbo.student /建立学生信息表更新触发器FOR UPDATE ASUPDATE MAJOR /更新专业信息表MAJORSET SNO = (SELECT SNO FROM INSERTED) /将MAJOR

27、表中学号改成学生表修改后WHERE SNO = (SELECT SNO FROM DELETED);/更改相应学生学号-CREATE TRIGGER student1 ON dbo.major /建立专业信息表更新触发器FOR UPDATE ASUPDATE STUDENT /更新学生信息信息表STUDENTSET MNO = (SELECT MNO FROM INSERTED) /将STUDENT表中专业号改成专业表修改后WHERE MNO = (SELECT MNO FROM DELETED); /更改相应专业号-CREATE TRIGGER student2update ON dbo.d

28、epartment /建立院系信息表更新触发器FOR UPDATE ASUPDATE STUDENT /更新学生信息信息表STUDENTSET DMPNO = (SELECT DMPNO FROM INSERTED) /将STUDENT表中院系号改成专业表修改后WHERE DMPNO = (SELECT DMPNO FROM DELETED); /更改相应院系号-(2) 数据删除-CREATE TRIGGER teach1update ON dbo.teacher /建立教师信息表删除触发器FOR DELETE ASUPDATE TEACH /删除授课信息表TEACHSET TNO = NUL

29、L /删除TEACH表中教工号删除WHERE TNO = (SELECT TNO FROM DELETED) /找到相应教工号-CREATE TRIGGER sc1update ON dbo.course /建立课程信息表删除触发器FOR DELETEASUPDATE SC /删除选课信息表SCSET CNO = NULL /删除SC表中课程号删除WHERE CNO = (SELECT CNO FROM DELETED) /找到相应课程号-CREATE TRIGGER stu_majorupdate ON dbo.major /建立专业信息表删除触发器FOR DELETE ASUPDATE S

30、TUDENT /删除学生信息表STUDENT SET MNO = NULL /删除STUDENT 表中专业号删除WHERE MNO = (SELECT MNO FROM DELETED) /找到相应专业号-CREATE TRIGGER teacherupdate ON dbo.department /建立院系信息表删除触发器FOR DELETE ASUPDATE TEACHER /删除教师信息表TEACHER SET DMPNO = NULL /删除TEACHER表中院系号删除WHERE DMPNO = (SELECT DMPNO FROM DELETED) /找到相应院系号-5.2.2 存储

31、过程存储过程是PL/SQL语句书写过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。(1)数据查询-存储过程名:教师信息查询入口参数:tno varchar(10)/输入教师教工号出口参数:tno char(10), tname varchar(10), profess varchar(10), dname varchar(10), tel int, tsex char(2),/定义存储输出教师信息变量CREATE PROCEDURE selectteacher /建立查询教师信息存储过程tnoASSELECT tno = tno FROM INSERTED /选取与输入教

32、工号相等所有记录SELECT * /选出符合条件教师所有信息 FROM teacher GO-存储过程名:院系信息查询入口参数:dmpno/输入院系院系号出口参数:dmpno, dmpname,dmphead, /定义存储输出院系信息变量CREATE PROCEDURE selectdepartment/建立查询院系信息存储过程dmpnoASSELECT dmpno = dmpno FROM INSERTED/选取与输入院系号相等所有记录SELECT */选出符合条件院系所有信息 FROM department GO-(2)数据插入-存储过程名:学生信息插入入口参数:sno varchar(1

33、0),id varchar(20), intime varchar(20),birthplace varchar(10), sname varchar(10),ssex char(2), birthday varchar(20),symbol varchar(8), homeaddr varchar(20), postcode int,/输入需要插入学生所有信息 出口参数: 无CREATE PROCEDURE insertstudent/建立插入学生信息存储过程 sno varchar(10),id varchar(20),intime varchar(20),birthplace varch

34、ar(10), sname varchar(10),ssex char(2), birthday varchar(20),symbol varchar(8),homeaddr varchar(20), postcode int,/定义存储插入学生信息变量ASINSERT INTO student(sno,sname,ssex,birthday,symbol,id,intime,birthplace,homeaddr,postcode)/插入学生表相应列名VALUES (sno varchar(10),sname varchar(10),ssex char(2),birthday varchar

35、(20),symbol varchar(8),id varchar(20),intime varchar(20),birthplace varchar(10),homeaddr varchar(20),postcode int)/插入学生表相应列名值GO-存储过程名:教师信息插入入口参数:tno char(10), tname varchar(10), profess varchar(10), dname varchar(10), tel int, tsex char(2),/输入需要插入教师所有信息 出口参数: 无CREATE PROCEDURE insertteacher tno char(10),tname varchar(10),profess varchar(10),dname varchar(10), tel int,tsex char(2),/定义存储输出教师信息变量ASINSERT INTO teacher(tno,tname,tsex,profess,dname,tel)/插入教师表相应列名VALUES (tno char(10),tname varchar(10),tsex char(2),profess varchar(10),dname varchar(10),tel int,)/插入教师表相应列名值GO-(3)数据删除-

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服