学生学籍管理系统数据库系统SQL

上传人:仙*** 文档编号:88839149 上传时间:2022-05-11 格式:DOC 页数:34 大小:299KB
收藏 版权申诉 举报 下载
学生学籍管理系统数据库系统SQL_第1页
第1页 / 共34页
学生学籍管理系统数据库系统SQL_第2页
第2页 / 共34页
学生学籍管理系统数据库系统SQL_第3页
第3页 / 共34页
资源描述:

《学生学籍管理系统数据库系统SQL》由会员分享,可在线阅读,更多相关《学生学籍管理系统数据库系统SQL(34页珍藏版)》请在装配图网上搜索。

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

2、统,可以做到信息的规管理,科学统计和快速的查询,从而减少管理方面的工作量和减少人为的错误。1.2开发环境本学生学籍管理系统(数据库系统)的开发与运行环境如下:开发环境:Windows *P辅助工具:PowerDesigner Trial 11数据库管理系统:SQL Server 2000运行环境:Windows 2000/*P/20031.3容和要求系统目标设计 使得学生的学籍管理工作更加清晰、条理化、自动化。 很容易地完成新生信息的输入、老生信息的备份、毕业学生的信息可以很容易地保存。 当学生需要查询成绩时,可以很简单地将其需要的信息从数据库中查找出来并可以打印查询结果。 随着当今网络技术的

3、发展,提供网络在线查询功能,可以为毕业生提供更多的就业机会。系统功能要求(1)学生基本信息系统 能够完成新、老生信息的输人、修改、插人、删除等工作。 可以按照特定的信息进行查找,并按照特定的要求进行排序。 可以对老生的信息进行备份,以便日后查询。 可以对学生的信息进行打印输出。 提供详细的帮助文件和系统维护功能。(2)学生成绩管理系统 此部分的功能如下: 学生成绩的输入、修改、删除等基本操作。 成绩的综合统计功能,包括学生成绩按照不同条件进行排名。管理人员可以选择不同的排序条件,并可以将排序结果进行打印输出。 计算各班的总分和平均分,并按照平均分将各班成绩进行排序。 统计不及格考生的信息,根据

4、条件确定是重修还是补考。 学生奖励统计,自动生成每班获得奖学金的同学的信息,并可以将奖学金分成不同的等级,以及所得奖学金的数目。 本系统可以在单机上运行,也可以应用在网络上供在线查询成绩和其他一些学生的信息(此功能选做人提供给学生进行查询的系统和提供给教务处使用的系统,在不同用户使用时,应该会有不同的使用权限。 提供详细的帮助文件。由于数据库的信息会很多,注意数据库表格设计,使得学生查询基本信息或学习成绩时使用时间较短。按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计。系统的功能模块设计图如图所示。图 1-1 系统功能模块设计图2需求分析2.1 引言 进行数据库设计首先

5、必须准确了解也分析用户需求(包括数据和处理)。目的是为学籍管理数据库系统的设计打下牢牢的基础,是数据库开发的重要文件依据,主要为数据库设计人员使用,是用户和系统分析员的项目依据文件。作为地基”的需求分析是否做得充分与准确,它决定了在其上构建数据库大厦的速度和质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。本系统的开发是设计一个学生学籍管理系统(数据库系统)。2.2 用户需求本系统是针对高等院校的学生学籍管理,因此学籍管理系统的用户包括系统管理员、教师和学生。主要涉及系部信息、班级信息、任课教师信息、学生信息、课程信息以及选课记录和成绩等多种数据信息。实现的具体功能如下:l 基本信息管

6、理系统管理员负责对各种基本信息的录入、修改、删除等操作。l 学生成绩管理系统管理员负责对学生成绩的录入、修改、删除等操作,学生可以查询各科成绩。l 信息查询统计学生可以查询基本信息和各科的考试成绩,老师可以查询基本信息和授课信息,系统管理员负责把老师提交的学生成绩进行管理,计算总成绩和平均成绩,统计不及格学生信息和获得奖学金学生的信息,最后再输出所有的信息。l 毕业生信息管理系统管理员负责计算毕业学生在学校期间所修课程的总学分,并进行审核,最后输出登记表和名册。l 系统用户管理系统管理员负责用不同的权限来限制不同用户对系统的使用。以上是用户对系统的基本的功能要求,此外用户还要求系统的效率要高,

7、查询速度要快,比较小的冗余,易维护,具有较高的数据安全性。2.3 划分功能模块根据系统功能的需求分析和高等院校学籍管理的特点,经过模块化的分析得到如下图1-1所示的系统功能模块结构图。学籍管理系统基本信息管理毕业生信息管理学生成绩管理系统用户管理信息查询统计基本信息删除基本信息修改基本信息录入学生成绩删除学生成绩修改学生成绩录入修改密码输出相关信息统计学生成绩计算学生成绩学生成绩查询基本信息查询输出名册审核资格计算学分帮助信息图 2-1 系统功能模块图2.4数据字典 数据项数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果,数据字典是对系统所用到的所有表结构的描

8、述,学籍管理的主要数据见下表。表 2.1 老师基本信息表序号字段别名数据类型数据长度码1tno*char10Y2tnamevarchar10N3tse*性别Char2N4profess职称varchar10N5dname所属院系varchar8N6telintN表 2.2 学生基本信息表序号字段别名数据类型数据长度码1sno*varchar10Y2snamevarchar10N3sse*性别Char2N4birthday出生日期timestamp20N5symbol政治面貌varchar8N6Id号varchar20N7Intime入学时间varchar20N8birthplace籍贯varc

9、har10N9homeaddr家庭住址varchar30N10postcode邮政编码intN表 2.3 专业信息表序号字段别名数据类型数据长度码1mno专业号char10Y2sno*varchar10N3mname专业名char10N4intime入学时间datetimeN表 2.4 毕业信息表序号字段别名数据类型数据长度码1gno毕业证编号char10Y2sno*varchar10N3snamevarchar10N4sse*性别char2N5dname所属院系varchar10N6intime入学时间datetimeN7ycredit已修学分floatN8*credit需修学分floatN

10、表 2.5 院系信息表序号字段别名数据类型数据长度码1dmpno院系号varchar10Y2dname院系名称varchar10N3dmphead院长名varchar20N表 2.6 课程信息表序号字段别名数据类型数据长度码1o课程号varchar5Y2ame课程名varchar15N3credit学分smallintN表 2.7 学生选课信息表序号字段别名数据类型数据长度码1sno*varchar10Y2o课程号varchar5Y3grade成绩floatN表 2.8 老师授课信息表序号字段别名数据类型数据长度码1o课程号varchar5Y2tno教工号char10Y3ctime课时smal

11、lintN数据结构数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或若干个数据项和数据结构混合组成。经过数据项和用户需求的分析,我对本系统一共分了5个组,具体如下表所示:表 2.9 数据结构表数据结构名含义说明组成部分学生基本信息管理描述学生基本信息*+性别+出生日期+号+入学时间+政治面貌+家庭住址+籍贯+邮政编码+民族老师基本信息管理描述老师基本信息教工号+性别+职称+所属院系+学生、老师相关信息管理描述学生选课信息,毕业信息,专业、院系信息,老师授课信息,院系信息*+课程号+成绩课程号+教工号毕业证编号+*+性别+号+所属院系+入学时间+

12、已修学分+需修学分学生成绩管理描述学生平均成绩、总成绩的计算,统计相关信息*+课程号+成绩系统管理描述用户修改密码,帮助信息数据流数据流是数据结构在系统传输的路径。通过对用户的需求分析,以及数据项和数据流的设计,得出了相应的数据流描述如下表所示:1、数据流定义表表 2.10 数据流定义表编号数据流名组成流量备注01学生信息*+性别+出生日期+号+入学时间+政治面貌+家庭住址+籍贯+邮政编码+民族大学生基本信息02教师信息教工号+性别+职称+所属院系+一般教师基本信息03学生成绩*+性别+*+课程号+成绩大学生详细信息04科目成绩*+课程号+成绩大学生考试成绩05各门成绩*+课程号+成绩课程号+

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

14、索A2教师相关信息0302一般批处理、顺序检索A3学生成绩单06,07大批处理、更新、顺序检索处理过程处理过程的具体处理逻辑一般用判定表或判定树来描述。对于本系统用于学生学籍管理一共设计了四种处理方法,具体处理方式如下表所示:表 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图,由概念模型辅助工具PowerDesig

18、ner11进行设计,通过具体地设置和绘图,最后就形成了如下所示的概念模型图,生成的概念结构就能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求,是对现实世界的一个真实模型。图 3-12 学籍管理系统概念模型图. z.-4逻辑结构设计逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。设计逻辑结构一般分为3步进行:(1)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;(3)对数据模型进行优化。4.1 关系模型将E-R图转换为关系模型实际上就

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

20、换为一个独立的关系模式,则与该联系相连的个各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。(3)一个m:n联系转换为一个关系模式。与该联系相连的个实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。(4)3个或3个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一部分。(5)具有相同码的关系模式可合并。将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示:n 学生(*,专业号,院系号,性别,出生日期,号,入学时间,政治面貌,家庭

21、住址,籍贯,邮政编码,民族),此为学生实体对应的关系模式。n 教师(教工号,性别,职称,所属院系,),此为老师实体对应的关系模式。n 毕业(毕业证编号,*,性别,号,所属院系,入学时间,已修学分,需修学分),此为毕业实体对应的关系模式。n 课程(课程号,课程名,学分),此为课程实体对应的关系模式。n 院系(院系号,院系名称,院长名),此为院系实体对应的关系模式。n 选修(*,课程号,成绩),此为选修关系对应的关系模式。n 授课(课程号,教工号,课时),此为老师授课关系对应的关系模式。n 开设(专业号,课程号),此为专业开设课程关系对应的关系模式。4.2 物理模型将生成的概念模型通过单击Powe

22、rDesigner11工具菜单栏上的Tools选项,再选择Generate Physical Data Model选项,就可以转换为物理模型,生成的最后结果具体如下图所示:图 4-1 学籍管理系统物理模型图5物理结构设计与功能实现5.1 物理结构设计数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。物理结构设计阶段实现的是数据库系统的模式,它的质量直接决定了整个系统的性能。因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数数据库的物理设计通常分为两步:(1)确定数据库的物理结构,在关系数据库中主要指存

23、取方法和存取结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。 确定数据库的存储结构由于本系统的数据库建立不是很大,所以数据存储采用的是一个磁盘的一个分区。 存取方法和优化方法存取方法是快速存取数据库中数据的技术。数据库管理系统一般都是提供多种存取方法。常用的存取方法有三类。第一类是索引方法,目前主要是B+树索引方法;第二类是聚簇方法;第三类是HASH方法。数据库的索引类似书的目录。在书中,目录允许用户不必浏览全书就能迅速地找到所需要的位置。在数据库中,索引也允许应用程序迅速找到表中的数据,而不必扫描整个数据库。在书中,目录就是容和相应页号的清单。在数据库中,索引就是表中数据和相应存

24、储位置的列表。使用索引可以大大减少数据的查询时间。但需要注意的是索引虽然能加速查询的速度,但是为数据库中的每表都设置大量的索引并不是一个明智的做法。这是因为增加索引也有其不利的一面:首先,每个索引都将占用一定的存储空间,如果建立聚簇索引(会改变数据物理存储位置的一种索引),占用需要的空间就会更大;其次,当对表中的数据进行增加、删除和修改的时候,索引也要动态地维护,这样就降低了数据的更新速度。5.2 功能实现完成数据库的物理设计之后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式。然后就可以

25、组织数据入库,最后就在此基础上编写各个表相关的触发器和存储过程。 触发器触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在DBMS核心层进行集中的完整性控制。由于本系统的触发器比较多,在这里我只写出了其中的一部分触发器,具体如下所示。(1)数据更新-CREATE TRIGGER scupdate ON dbo.student /建立学生信息表更新触发器FOR UPDATE ASUPDATE SC /更新学生选课表SCSET SNO = (SELECT SNO FROM INSERTED) /将SC表中的*改成学生表改后

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

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

28、UDENT表中的专业号改成专业表修改后的WHERE MNO = (SELECT MNO FROM DELETED); /更改对应的专业号-CREATE TRIGGER student2update ON dbo.department /建立院系信息表更新触发器FOR UPDATE ASUPDATE STUDENT /更新学生信息信息表STUDENTSET DMPNO = (SELECT DMPNO FROM INSERTED) /将STUDENT表中的院系号改成专业表修改后的WHERE DMPNO = (SELECT DMPNO FROM DELETED); /更改对应的院系号-(2) 数据删

29、除-CREATE TRIGGER teach1update ON dbo.teacher /建立教师信息表删除触发器FOR DELETE ASUPDATE TEACH /删除授课信息表TEACHSET TNO = NULL /删除TEACH表中的教工号删除WHERE TNO = (SELECT TNO FROM DELETED) /找到对应的教工号-CREATE TRIGGER sc1update ON dbo.course /建立课程信息表删除触发器FOR DELETEASUPDATE SC /删除选课信息表SCSET O = NULL /删除SC表中的课程号删除WHERE O = (SEL

30、ECT O FROM DELETED) /找到对应的课程号-CREATE TRIGGER stu_majorupdate ON dbo.major /建立专业信息表删除触发器FOR DELETE ASUPDATE STUDENT /删除学生信息表STUDENT SET MNO = NULL /删除STUDENT 表中的专业号删除WHERE MNO = (SELECT MNO FROM DELETED) /找到对应的专业号-CREATE TRIGGER teacherupdate ON dbo.department /建立院系信息表删除触发器FOR DELETE ASUPDATE TEACHER

31、 /删除教师信息表TEACHER SET DMPNO = NULL /删除TEACHER表中的院系号删除WHERE DMPNO = (SELECT DMPNO FROM DELETED) /找到对应的院系号- 存储过程存储过程是PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。(1)数据查询-存储过程名:教师信息查询入口参数:tno varchar(10)/输入教师的教工号出口参数:tno char(10), tname varchar(10), profess varchar(10), dname varchar(10), tel int, tse*

32、 char(2),/定义存放输出教师信息的变量CREATE PROCEDURE selectteacher /建立查询教师信息存储过程tnoASSELECT tno = tno FROM INSERTED /选择与输入教工号相等的所有记录SELECT * /选出符合条件的教师所有信息 FROM teacher GO-存储过程名:院系信息查询入口参数:dmpno/输入院系的院系号出口参数:dmpno, dmpname,dmphead, /定义存放输出院系信息的变量CREATE PROCEDURE selectdepartment/建立查询院系信息存储过程dmpnoASSELECT dmpno =

33、 dmpno FROM INSERTED/选择与输入院系号相等的所有记录SELECT */选出符合条件的院系所有信息 FROM department GO-(2)数据插入-存储过程名:学生信息插入入口参数:sno varchar(10), id varchar(20), intime varchar(20),birthplace varchar(10), sname varchar(10),sse* char(2), birthday varchar(20),symbol varchar(8), homeaddr varchar(20), postcode int,/输入需要插入的学生所有信息

34、 出口参数: 无CREATE PROCEDURE insertstudent/建立插入学生信息的存储过程 sno varchar(10), id varchar(20),intime varchar(20),birthplace varchar(10), sname varchar(10),sse* char(2), birthday varchar(20),symbol varchar(8),homeaddr varchar(20), postcode int,/定义存放插入学生信息的变量ASINSERT INTO student(sno,sname,sse*,birthday,symbol

35、,id,intime,birthplace,homeaddr,postcode)/插入学生表对应的列名VALUES (sno varchar(10), sname varchar(10), sse* char(2),birthday varchar(20), symbol varchar(8), id varchar(20),intime varchar(20), birthplace varchar(10),homeaddr varchar(20), postcode int)/插入学生表对应列名值GO-存储过程名:教师信息插入入口参数:tno char(10), tname varchar

36、(10), profess varchar(10), dname varchar(10), tel int, tse* char(2), /输入需要插入的教师所有信息 出口参数: 无CREATE PROCEDURE insertteacher tno char(10), tname varchar(10),profess varchar(10),dname varchar(10), tel int,tse* char(2),/定义存放输出教师信息的变量ASINSERT INTO teacher(tno,tname,tse*,profess,dname,tel)/插入教师表对应的列名VALUES

37、 (tno char(10), tname varchar(10), tse* char(2),profess varchar(10), dname varchar(10), tel int,)/插入教师表对应列名值GO-(3)数据删除-存储过程名:学生信息删除入口参数:sno varchar(10) /输入要删除学生的* 出口参数: 无CREATE PROCEDURE deletestudent /建立删除学生信息的存储过程sno,ASSELECT sno = sno FROM DELETED /选择与输入*相等的所有记录DELETE FROM student/删除符合条件的记录GO-存储过

38、程名:专业信息删除入口参数:mno varchar(10) /输入要删除专业的专业号 出口参数: 无CREATE PROCEDURE deletemajor/建立删除专业信息的存储过程 mname,ASSELECT mname = mname FROM DELETED/选择与输入专业号相等的所有记录DELETE FROM major/删除符合条件的记录GO-(4)数据更新-存储过程名:学生*更新入口参数: no int, /输入要更新的学生* 出口参数: sno int,/输出更新后的学生*CREATE PROCEDURE updatesno /建立更新学生*的存储过程 no int,ASSE

39、LECT no = sno FROM INSERTED/选择与输入*相等的所有记录UPDATE studentSET sno=no/更新符合条件的记录GO-存储过程名:专业名更新入口参数:mname varchar(20),/输入要更新的专业名称 出口参数:name varchar(20),/输出更新后的专业名称CREATE PROCEDURE updatemname /建立更新专业名的存储过程 name varchar(20),ASSELECT mname = mname FROM INSERTED/选择与输入*相等的所有记录UPDATE majorSET mname=name/更新符合条件

40、的记录GO-5.3数据库的实施和维护完成数据库的物理设计之后,设计人员就要用RDBMS提供的数据定义语言和其他实用程序将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码,再经过调试产生目标模式。然后就可以组织数据入库了,这就是数据库实施阶段。 数据库的实施数据库的实施主要是根据逻辑结构设计和物理结构设计的结果,在计算机系统上建立实际的数据库结构、导入数据并进行程序的调试。它相当于软件工程中的代码编写和程序调试的阶段。当在PowerDesigner Trial 11中设计好本系统的物理结构之后,就可以向数据库转换为相应的表。先选择菜单栏中Database的Connect,通

41、过添加数据源,连接数据源,输入用户名和密码进行转换,生成相关的SQL语句,在通过运行之后,最终在SQL Server 2000中生成了如下所示的表。u 学生基本信息表(主要描述一些学生入学前的基本信息):图 5-1 学生基本信息表结构图u 教师基本信息表(主要描述教师的一些基本信息):图 5-2 教师基本信息表结构图u 院系信息表(主要描述学校中各个院系的一些基本信息):图 5-3 院系信息表结构图u 专业信息表(主要描述学生选择专业的信息):图 5-4 专业信息表结构图u 课程信息表(主要描述学校开设的课程的基本信息):图 5-5 课程信息表结构图u 选课信息表(主要描述学生选修课程的信息)

42、:图 5-6 选课信息表结构图u 授课信息表(主要描述教师授课的信息):图 5-7 授课信息表结构图u 学生毕业信息表(主要描述学生毕业的基本信息):图 5-8 学生毕业信息表结构图 数据的载入数据库实施阶段包括两项重要的工作,一项是数据的载入,另一项是应用程序的编码和调试。由于本次课程设计没有进行应用程序的开发,因此对于后一项工作在这里就不做描述了。具体输入的一部分数据如下图所示:S 输入学生基本信息:图 5-9 学生部分基本信息数据图S 输入教师基本信息:图 5-10教师基本信息数据图S 输入课程基本信息:图 5-11 课程信息数据图S 输入院系基本信息:图 5-12 院系基本信息数据图S

43、 输入专业信息:图 5-13 专业信息数据图S 输入学生毕业基本信息:图 5-14 学生毕业基本信息数据图S 输入学生选课信息:图 5-15 学生选课信息数据图S 输入教师授课信息:图 5-16 教师授课基本信息数据图5.3 数据库的试运行 通过SQL语句进行简单测试当一小部分数据输入数据库后,就可以开始对数据库系统进行联合调试,这一阶段要实际运行数据库应用程序,执行对数据库的各种操作,由于没有应用程序,所以只有通过SQL语言直接在数据库中执行对数据库的各种操作。通过在SQL Server 2000的查询分析器中输入相应的SQL语句,就可以得到相应的结果,具体如下所示:(1)查询学生的基本信息

44、输入SQL语句:SELECT sno,sname,sse*,dmpno,mno,birthday,sid,intimeFROM student;执行结果:图 5-17 查询学生基本信息结果图(2)插入教师的基本信息输入SQL语句:INSERT INTO teacher (tno,dmpno,tname,tse*,profess,tel)VALUES (25,05,田七,男,教授,1345263526);执行结果:图 5-18 插入教师基本信息结果图(3)删除课程的基本信息输入SQL语句:DELETEFROM courseWHEREame = 大学英语;执行结果:图 5-19删除课程信息结果图(

45、4)更新学生的基本信息(将*为1的学生的入学时间改为2006-9-1)输入SQL语句:UPDATE studentSET intime = 2006-9-1WHERE sno = 1;执行结果:图 5-20 更新学生基本信息结果图5.4 数据库的运行和维护数据库试运行合格后,数据库开发工作就基本完成,即可投入正式运行了。但是,由于应用环境在不断变化,数据库运行过程中物理存储也会不断变化,对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的,包括:(1)数据库的转储和恢复DBA要针对不同的应用要求制定

46、不同的转储计划,一保证一旦发生故障能尽快将数据库恢复到*种一致的状态,并尽可能减少对数据库的破坏。(2)数据库的安全性、完整性控制DBA根据实际情况修改原有的安全性控制和数据库的完整性约束条件,以满足用户要求。(3)数据库性能的监督、分析和改造在数据库运行过程中,DBA必须监督系统运行,对监测数据进行分析,找出改进系统性能的方法。(4)数据库的重组织与重构造数据库运行一段时间后,由于记录不断增、删、改,会使数据库的物理存储情况变坏,降低了数据的存取效率,数据库性能下降,这时DBA就要对数据库进行重组织或部分重组织。6设计体会与建议通过近两周的数据库程序设计课,使我对这学期学的知识有了全面的认识

47、。由于以前大部分时间都在学习理论的知识,所以对数据库设计不是很了解。而学校提供的这次实习机会使我收获颇多,从中也发现了许多不足,让我找到了以后学习的方向。通过努力,我们组设计出了一个学籍管理的数据库系统,这个系统可以帮助用户更好、更快、更有效地管理学生的学籍问题。在这个系统中,我们主要实现了的功能有能够完成新、老生信息的输人、修改、插人、删除等工作,可以按照特定的信息进行查找,并按照特定的要求进行排序,可以对老生的信息进行备份,以便日后查询,可以对学生的信息进行打印输出,学生成绩的输入、修改、删除等基本操作,成绩的综合统计功能,包括学生成绩按照不同条件进行排名。管理人员可以选择不同的排序条件,

48、并可以将排序结果进行打印输出,计算各班的总分和平均分,并按照平均分将各班成绩进行排序,统计不及格考生的信息,根据条件确定是重修还是补考,学生奖励统计,自动生成每班获得奖学金的同学的信息,并可以将奖学金分成不同的等级,以及所得奖学金的数目。其中有优点,但也存在不足的地方。优点是可以保证用户更好地管理数据,可以运用多种功能。不足的地方是我在设计触发器和存储过程的时候没有实现好,分析其中的原因,是我自己对触发器和存储过程没有更加深入的了解,平时没有花时间去练习,因此我决定在以后的学习中要更加努力。实习结束后,我发现理论和实践之间还是存在一定的差距,要把理论知识灵活运用于实践才是最好的,因此我也希望学校能多给我们提供一些实践的机会。7参考文献1 王珊、萨师煊.数据库系统概论. .高等教育.2006.2 王珊等. 数据仓库技术与联机分析处理. .科学.1998.3 Inmon W H .数据仓库.机械工业,2000.4 Inmon W H等 .数据仓库管理.电子工业,2000.5 Kimball R等.数据仓库工

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!