ImageVerifierCode 换一换
格式:DOCX , 页数:30 ,大小:316.53KB ,
资源ID:2483361      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-2483361.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库设计报告学籍管理系统.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数据库设计报告学籍管理系统.docx

1、数据库设计报告学籍管理系统学籍管理系统设计报告1设计内容与要求11 设计题目 学籍管理系统12 设计目的与要求该课程设计要求设计一个学籍管理的数据库系统,数据库中要求包含学生的根本信息,学校所有专业信息,学校教师信息以及课程设置的信息。同时还要设计它们之间的关系,如学生与课程关系和学生的成绩等,最后还要对一些数据进展查询,如查询学生成绩的各种集合等。我们通过该课程设计,应该到达的目的是把数据库理论知识更加的稳固加深,加强动手能力与实践能力,学以致用,与现实生活中的应用充分的结合起来。13 设计环境在Windows 环境下利用作为数据库管理系统对数据进展管理与维护。2需求分析21 系统功能要求设

2、计 使得学生的学籍管理工作更加清晰、条理化、自动化。 容易地完成学生信息的查询、更新、修改等操作。 对于学生成绩管理模块,能更加容易的求得学生的平均成绩、最高分、最低分等,可以按照学生的成绩进展排序处理等。22 系统模块设计学籍管理系统大体可以分成四大模块如下列图所示, 首先是学生的根本信息模块,里面应该包含学生的各方面的根本信息;再者便是学生成绩管理模块, 在该模块中应该包含有对学生成绩信息的查询和处理,如平均成绩、最好成绩、最差成绩以及不及格学生的统计等功能模块;再其次还有院系、教师、课程等相关信息的模块;最后是系统模块。图 2-1 系统模块图23 数据字典2.3.1数据项数据项是数据库的

3、关系中不可再分的数据单位,下表分别列出了数据的名称(即码)、注释、数据类型、长度、取值X围和是否是主码。表 2.1 数据项列表名称注释数据类型长度最小值最大值主要的班级varchar(16)16FALSE学号唯一标识学生的信息integerTRUE院系代号varchar(5)5FALSE专业号varchar(5)5FALSEXXvarchar(6)6FALSE性别varchar(2)2FALSE出生年月datetimeFALSE籍贯varchar(8)8FALSE民族varchar(2)2FALSE家庭住址varchar(20)20FALSE入学时间datetimeFALSE政治面貌varch

4、ar(6)6FALSEXX号char(18)18FALSE联系varchar(12)12FALSE备注varchar(14)14FALSE课程号varchar(5)5TRUE先行课smallintFALSE学分integerFALSE备注varchar(16)16FALSE院系代号varchar(5)5TRUE院系名varchar(10)10FALSE系主任varchar(8)8FALSE备注varchar(16)16FALSE教师号varchar(5)5TRUE院系代号varchar(5)5FALSEXXvarchar(6)6FALSE性别char(2)2FALSE年龄integerFALS

5、E工龄integerFALSE备注varchar(16)16FALSE专业号varchar(5)5TRUE院系代号varchar(5)5FALSE专业名称varchar(16)16FALSE备注varchar(16)16FALSE学号integerTRUE课程号varchar(5)5TRUE分数floatFALSE课程号varchar(5)5TRUE教师号varchar(5)5TRUE2.3.2数据构造数据构造是为反映数据之间的组合关系,即 一个数据构造可以由假设干个数据项组成,也可以由假设干个数据构造组成,或由假设干个数据项和数据构造组成。本学籍管理系统的数据组成可根据系统模块(图 1-1)

6、的划分来设计,即分为四个数据构造,分别如下表所示。表 2.2 数据构造清单数据构造名含义说明组成学生根本信息学生根本信息的描述班级+学号+院系代号+专业号+XX+性别+出生年月+籍贯+民族+家庭住址+入学时间+政治面貌+XX号+联系+备注;成绩管理学生成绩的管理与查询管理描述学号+课程号+分数;平均分数+最高分+最低分;学生相关信息学校的院系、教师信息以及课程信息的描述课程号+课程名+先行课+学分+备注;院系代号+院系名+系主任+备注;教师号+院系代号+XX+性别+年龄+工龄+备注;系统管理对系统中的所有表的更新、删除、修改描述2.3.3数据存储数据存储是数据构造停留或保存的地方,也是数据流的

7、来源和去向之一。其主要包括数据存储名、说明、编号、输入的数据流与输出的数据流、组成、数据量,存取频度、存取方式。下表表示了该学籍管理系统中的数据存储描述。表 2.5 数据存储描述数据存储名组成存取频度存取方式学生根本信息表学生根本信息构造大顺序检索、更新院系教师及专业表学生相关信息数据构造小顺序检索、更新学生成绩表成绩管理构造一般顺序检索、更新3概念构造设计31 数据抽象与局部视图设计3.1.1学生根本信息与课程信息视图图3-1 学生根本信息视图 图3-2 课程信息视图根据学生与课程的关系可设计如下关系图:图3-3 学生与课程关系视图3.1.2专业、教师及院系信息视图图3-4 专业、教师及院系

8、信息视图院系、教师以及专业的关系图如下:图3-5 院系教师以及专业关系图32 系统数据流图系统的管理模块里面包含教务部门(系统管理员和教务处管理人员)、教师以及学生,下列图为该学籍管理系统的系统流图,教务部门拥有对所有表的查询更新与删除权利(分类信息属于查询结果除外);教师可对教师、专业以及院系信息,分类信息,学生情况进展查询,对成绩单进展查询、更新以及删除等所有操作;学生只可对所有模块信息进展查询,同时可对自己的局部学生情况进展一定的修改与更新。图3-6系统数据流图33 合并局部视图生成E-R 图合并数据抽象与局部视图设计中的各个局部视图以及各个实体之间的关系生成E-R图如下:图3-7 系统

9、E-R图34 概念模型设计在生成了系统E-R图后,可根据E-R图中实体的各个属性组成以及实体与实体之间的关系用PowerDesigner设计概念模型。最后生成概念模型如下列图所示:图3-8 系统概念模型设计图4逻辑构造设计41 概念模型向物理模型的转换在概念模型设计好了之后,可直接在powerdesigner 中将设计好了的概念模型转换成物理模型。其具体操作过程为 点击主菜单的 Tools Generate Physical Data Model 便可以将当前的概念模型转换为物理模型,转换后的物理模型如下列图所示:图4-1 物理模型图因为一个实体模型转换为一个关系模型时遵循以下规那么1.一个1

10、:1联系可转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并;2.一个1:n联系可以转换为独立的关系模式,也可以与n端对应的关系模式合并;3.一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码组成关系的码或关系码的一局部;所以在转换中院系与专业合并到学生根本信息关系中,院系与专业的主码成为学生信息的外码,同样院系的主码成为教师的外码。学生与课程、教师与课程均是多对多的关系所以,单独的生成了必修与教授两个关系。42数据库物理模型设计在PowerDesigner中将概念模型转换成物理模型之后,我们可以对物理模型进展设计,双击物理模型

11、的关系,便弹出对其设置的对话框,在General选项卡中可以对该关系的名称、注释以及码等信息进展设置。在Columns选项卡中可对该关系的属性列进展设计,可分别设置其名称、码、数据类型以及主码、是否为空等。下列图显示了课程与院系两个关系的物理设计其中课程号与院系代号分别为两个关系的住码:图4-2 课程与院系的物理设计下列图是教师与专业两个关系的物理设计,起中教师号与专业号分别为主码,因为教师与专业均附属于院系,所以院系代号分别是两个关系的外码:图4-3 教师与专业的物理设计SC与TC关系分别是学生根本信息与课程,教师与课程两个多对多联系合并生成的关系。SC关系描述了学生选择什么课程以及该课程的

12、分数,其中来自两个关系的主码组成该关系的主码同时也是外码;TC关系是教师与课程的联系,其描述了每个教师所教授的课程关系。图 4-4 SC与TC物理设计下面是学生根本信息的物理模型设计,学号作为主码,因为学生根本信息与专业、院系的对应关系均是n:1的联系,所以院系代号与专业号作为学生根本信息关系的外码。图4-5 学生根本信息物理设计5物理构造设计与功能实现51 系统的物理构造设计5.1.1 确定关系模型的存取方法在实际设计中最常用的存取方法是索引发,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键

13、上建立索引;在经常需要根据X围进展搜索的列上创立索引,因为索引已经排序,其指定的X围是连续的等规那么。才能充分利用索引的作用防止因索引引起的负面作用。5.1.2 确定数据库的存储构造确定数据库的存储构造主要指确定数据的存放位置和存储构造,包括确定关系、索引、日志、备份等的存储安排及存储构造,以及确定系统存储参数的配置。因为该学籍管理系统的数据量小,而且只作实验之用,所以我们只用把数据存储在使用的电脑硬盘上,不用作更多的安排。52数据库的实施与数据载入5.2.1 数据库的实施首先在数据库中建立一个学生数据库,然后新建一个数据源,在porwerDesigner中先建立连接 DatabaseConn

14、ect ,然后在弹出的对话框中选择数据源,填好数据库的用户名和密码(在本连接中用户名为sa密码为空),然后连接,最后检测数据是否连接正确。在数据库连接好了之后点击 Database Generate Database 将弹出的对话框的Generation 单项选择按扭选择为 ODBC Generation然后选择确定便可执行数据库的实施,生成的主要代码如下:/*=*/* DBMS name: Microsoft SQL Server 2000 */* Created on: 2006-1-3 10:56:43 */*=*/-创立课程表-create table Course ( 课程号 var

15、char(5) not null, 课程名 varchar(10) null, 先行课 smallint null, 学分 int null, 备注 varchar(16) null, constraint PK_COURSE primary key (课程号)goexecute sp_addextendedproperty MS_Description, 学校所有课程描述, user, , table, Coursego-创立院系表-create table Department ( 院系代号 varchar(5) not null, 院系名 varchar(10) null, 系主任 va

16、rchar(8) null, 备注 varchar(16) null, constraint PK_DEPARTMENT primary key (院系代号)goexecute sp_addextendedproperty MS_Description, 学校所有的院系信息描述, user, , table, Departmentgo-创立专业表-create table Major ( 专业号 varchar(5) not null, 院系代号 varchar(5) null, 专业名称 varchar(16) null, 备注 varchar(16) null, constraint PK

17、_MAJOR primary key (专业号)goexecute sp_addextendedproperty MS_Description, 学校所有专业信息描述, user, , table, Majorgo-在专业表上创立索引-create index DM_FK on Major (院系代号 ASC)go-创立学生与课程的成绩表-create table SC ( 学号 bigint not null, 课程号 varchar(5) not null, constraint PK_SC primary key (学号, 课程号)go-在SC表上创立索引SC_FK与SC2_FK-cre

18、ate index SC_FK on SC (学号 ASC)Gocreate index SC2_FK on SC (课程号 ASC)go-创立学生根本信息表-create table StudentsInfo ( 班级 varchar(16) null, 学号 bigint not null, 院系代号 varchar(5) null, 专业号 varchar(5) null, XX varchar(6) null, 性别 varchar(2) null, 出生年月 datetime null, 籍贯 varchar(8) null, 民族 varchar(2) null, 家庭住址 var

19、char(20) null, 入学时间 datetime null, 政治面貌 varchar(6) null, XX号 char(18) null, 联系 varchar(12) null, 备注 varchar(14) null, constraint PK_STUDENTSINFO primary key (学号)goexecute sp_addextendedproperty MS_Description, 学生根本信息描述, user, , table, StudentsInfogo-创立院系代号索引-create index SD_FK on StudentsInfo (院系代号

20、ASC)go-创立专业号索引-create index SM_FK on StudentsInfo (专业号 ASC)go-创立教师与课程关系表-create table TC ( 课程号 varchar(5) not null, 教师号 varchar(5) not null, constraint PK_TC primary key (课程号, 教师号)go-建立课程号索引-create index TC_FK on TC (课程号 ASC)go-建立教师号索引-create index TC2_FK on TC (教师号 ASC)go-创立 教师表-create table Teache

21、r ( 教师号 varchar(5) not null, 院系代号 varchar(5) null, XX varchar(6) null, 性别 char(2) null, 年龄 int null, 工龄 int null, 备注 varchar(16) null, constraint PK_TEACHER primary key (教师号)goexecute sp_addextendedproperty MS_Description, 学校教师信息描述, user, , table, Teachergo-建立TD_FK 索引-create index TD_FK on Teacher (

22、院系代号 ASC)goalter table Major add constraint FK_MAJOR_DM_DEPARTME foreign key (院系代号) references Department (院系代号)goalter table SC add constraint FK_SC_SC_STUDENTS foreign key (学号) references StudentsInfo (学号)goalter table SC add constraint FK_SC_SC2_COURSE foreign key (课程号) references Course (课程号)goa

23、lter table StudentsInfo add constraint FK_STUDENTS_SD_DEPARTME foreign key (院系代号) references Department (院系代号)goalter table StudentsInfo add constraint FK_STUDENTS_SM_MAJOR foreign key (专业号) references Major (专业号)goalter table TC add constraint FK_TC_TC_COURSE foreign key (课程号) references Course (课程

24、号)goalter table TC add constraint FK_TC_TC2_TEACHER foreign key (教师号) references Teacher (教师号)goalter table Teacher add constraint FK_TEACHER_TD_DEPARTME foreign key (院系代号) references Department (院系代号)go5.2.2数据库中表的设计 当上面的代码运行成功后后,在数据库的Student中便会生成相应的表,包括学生根本信息表、课程表、教师,专业和学院表、以及SC和TC表。数据库中生成表后,可以对其进展

25、设计,如下列图便是数据库中的学生根本信息表,我们可以对其每一列以及其数据类型、取值X围和是否是主码是否可以为空等信息进展设置后或修改。例如下列图,该表的初始状态只有学号不允许为空,但是这是很不符合实际情况的,在实际中我们往往还需要确定学生的班级、XX、入学时间所在院系与所属专业等情况,要求把这些信息也设置为不为空。图5-1 对数据库中学生根本信息表的设计5.2.3数据的载入 数据的载入是一个非常繁杂和重要的过程需要很大的工作量,可分为人工输入与其它格式数据文件导入。该系统只是一个简单的实验系统,所以采用手工输入少量的数据可满足实验要求即可。下面两个表分别显示了学生根本信息的录入与课程信息的录入

26、。表5.1 学生根本信息的录入表5.2 课程信息的录入53 触发器与存储过程设计5.3.1 触发器设计1StudentInfo 表上的出发器触发器:对于学生根本信息表,当学生信息修改时,其它表中假设有对应的该信息时,应该对其进展修改;当学生信息删除时,对应的如SC表中的对应学生成绩信息也应该自动修改: Supdata:CREATE TRIGGER Supdate ON dbo.StudentsInfo FOR UPDATE ASupdate SCset 学号 = ( select 学号 from inserted)where SC.学号=(select 学号 from deleted) ; Sdelete:CREATE TRIGGER Sdelete ON dbo.StudentsInfo FOR DE

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2