收藏 分销(赏)

学生信息管理系统SQL需求分析报告.doc

上传人:a199****6536 文档编号:3862550 上传时间:2024-07-22 格式:DOC 页数:19 大小:76.50KB
下载 相关 举报
学生信息管理系统SQL需求分析报告.doc_第1页
第1页 / 共19页
学生信息管理系统SQL需求分析报告.doc_第2页
第2页 / 共19页
学生信息管理系统SQL需求分析报告.doc_第3页
第3页 / 共19页
学生信息管理系统SQL需求分析报告.doc_第4页
第4页 / 共19页
学生信息管理系统SQL需求分析报告.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、SQL Server课程设计报告 院 系: 专 业: 学 号: 姓 名: 指导教师: 目录一: 需求分析阶段.3 1.1 分析阶段.3二: 概念结构设计阶段.3 2.1 实体间的联系.4三: 逻辑结构设计阶段4 3.1 系统中的关系模式4四: 物理结构设计阶段54.1 数据结构.54.2 关系.64.3 存储过程.64.4 触发器.7五: 实施阶段.75.1 创建数据库.75.2 创建备份.75.3 创建数据表文件.85.4 创建存储过程.95.5 创建存储过程.15六:截图.16七:小结.17 学生信息管理系统一:需求分析阶段学生信息管理系统就是对学生信息的管理,所以首先我们需要知道的是学生

2、有那些信息,并且是怎样进行分类的。学生的信息包含1:基本信息;2:课程及成绩;3课程表。基本信息根据要求应该包括学生的基本情况、获得奖励情况、受到处分情况、学生的家庭信息等;课程及成绩应该包含对应课程对应学生的成绩;课程表包含课程号及其先导课。学生唯一一一对应的是学号,所以学号是唯一的主键,其他的都不能是,根据学号我们可以查找学生的姓名信息,还有学生的上过课的课程成绩等有关信息;根据学号,可以知道学生的各科成绩查询。综合分析对信息管理系统分四个表:学生基本信息(学号,姓名 ,性别,出生日期,学生所在系,班号 ,入校成绩,入学时间,电话,父亲,母亲,获得奖励情况,受到处分情况),学生成绩表(学号

3、,课程号,成绩),课程表(课程号,课程名,教师姓名,先导课程)。二:概念结构设计阶段实体间的联系:1:学生基本信息与学生成绩表中,学号是相同的,成绩表的学号依附于学生基本信息中的学号。2:课程表中的学号与,学生的基本信息中的学号有联系,可以根据学号知道一个学生的信息。3:课程表中的课程号与学生成绩表中的课程号对应,课程表中的课程号依附于学生成绩表中的课程号。4:课程号于老师是一对一的关系,课程名对成绩是一对一的关系。 学号于课程号同样是一对多的关系,课程号对成绩是一对多的关系,一个学号和一个课程号对于成绩是一一对应的关系。E-R图如下 三:逻辑结构设计阶段学生信息系统中的关系模式如下:学生基本

4、信息(学号,姓名 ,性别,出生日期,入校成绩,入学时间,电话,父亲,母亲,家庭住址,获得奖励情况,受到处分情况),主键是学号。学生成绩表(学号,课程号,成绩),主键是学号+课程号。课程表(课程号,课程名,教师姓名,先导课程)。主键是课程号。四:物理结构设计阶段1:数据结构: 学生基本信息(学号 char(10) not null primary key,姓名 char(8) not null ,性别 char(2) not null,出生日期 datetime not null,学生所在系 varchar(20) not null,入校成绩 int not null,入学时间 datetime

5、 default (getdate() not null,电话 char(6) null,父亲 char(6) null,母亲 char(6) null,获得奖励情况 varchar(20) null,受到处分情况 varchar(10) null;学生成绩表(学号 char(10) not null foreign key(学号) references 学生基本信息(学号) ,课程号 varchar(6) null,成绩 int null); 课程表(课程号 char(3) primary key,课程名 varchar(20),教师姓名 varchar(8),先导课程 char(3) )2

6、:关系程数据表与课程表 的课程号 建立父子关系,学生基本信息与学生成绩表 的学号 建立父子关系。3:数据库名字为:学生信息管理系统 逻辑数据库名:学生信息管理系统 数据文件:学生信息管理系统dat.mdf,初始大小:1MB,最大空间为:20MB,增长量:2MB。 日志文件:学生信息管理系统log.ldf,初始大小:1MB,最大空间为:20MB,增长量:2MB。 备份设备名:备份;备份文件:学生信息管理备份。4:存储过程: 能录入、修改、查询、输出学生的档案信息,这些信息包括学生的基本情况、简历情况、获得奖励情况、受到处分情况、学生的家庭信息、学生的体检情况; 能录入、修改、查询、输出学生的入校

7、成绩、各学期各门课的成绩信息,并支持按年级、班级等条件的统计、查询、报表输出。 5:触发器: 修改学生基本信息中的学号 同时修改学生成绩表中的学号 修改课程数据表中的课程号,同时修改课程表中的课程号 删除学生基本信息的同学 同时删除学生成绩中该生的信息。五:实施阶段 1:创建数据库create database 学生信息管理系统on(name = 学生信息管理系统,filename = d:sql学生信息管理系统.mdf,size = 1,maxsize = 20,filegrowth = 2)log on(name = 学生信息管理系统log,filename = d:sql学生信息管理系统

8、log.ldf,size = 1,maxsize = 20,filegrowth = 2)2:创建备份sp_addumpdevicedisk,备份,d:sql学生信息管理备份.datgobackup database 学生信息管理系统 to 备份go3:创建数据表文件create table 学生基本信息(学号 char(10) not null primary key,姓名 char(8) not null ,性别 char(2) not null,出生日期 datetime not null,入校成绩 int not null,入学时间 datetime,电话 char(6) null,父

9、亲 char(6) null,母亲 char(6) null,获得奖励情况 varchar(20) null,受到处分情况 varchar(10) null,)Gocreate table 学生成绩表(学号 char(10) not null foreign key(学号) references 学生基本信息(学号) ,课程号 varchar(6) null,成绩 int null)Gocreate table 课程表(课程号 char(3) primary key,课程名 varchar(20),教师姓名 varchar(8),先导课程 char(3)Go4:创建存储过程create pro

10、cedure 录入学生基本信息( 学号 char(10), 姓名 char(8), 性别 char(2), 出生日期 datetime, 入校成绩 int, 入学时间 datetime, 电话 char(6), 父亲 char(6), 母亲 char(6), 获得奖励情况 varchar(20), 受到处分情况 varchar(10)as if 学号 is null or 姓名 is null or 性别 is null or 出生日期 is null or 入校成绩 is null print 请输入完整信息!else insert into 学生基本信息表 values(学号,姓名,性别,

11、出生日期,入校成绩,入学时间,电话,父亲,母亲, 获得奖励情况,受到处分情况)Gocreate procedure 修改学生基本信息( 学号 char(10), 姓名 char(8), 性别 char(2), 出生日期 datetime, 入校成绩 int, 入学时间 datetime, 电话 char(6), 父亲 char(6), 母亲 char(6), 获得奖励情况 varchar(20), 受到处分情况 varchar(10)as update 学生基本信息 set 学号 = 学号,姓名 = 姓名,性别 = 性别,出生日期 = 出生日期,入校成绩 = 入校成绩,入学时间 = 入学时间,

12、电话 = 电话,父亲 = 父亲,母亲 = 母亲,获得奖励情况 = 获得奖励情况,受到处分情况 = 受到处分情况where 学号 = 学号gocreate procedure 查询学生基本信息(学号 char(10) as select * from 学生基本信息 where 学号 = 学号gocreate procedure 输出学生基本信息(学号 char(10) ) as select * from 学生基本信息 where 学号 = 学号gocreate procedure 录入学生成绩(学号 char(10), 课程号 varchar(6), 成绩 int ) as insert in

13、to 学生成绩表 values(学号,课程号,成绩)gocreate procedure 修改学生成绩( 学号 char(10), 课程名 varchar(20), 成绩 int ) as update 学生成绩表 set 成绩 = 成绩 where 学号 = 学号 and 课程号 = (select 课程号 from 课程数据表 where 课程名 = 课程名)gocreate procedure 查询学生成绩( 学号 char(10), 课程名 varchar(20) as select 成绩 from 学生成绩 where 学号 = 学号 and 课程号 = (select 课程号 fr

14、om 课程表 where 课程名 = 课程名)gocreate procedure 输出学生成绩( 学号 char(10), 课程名 varchar(20) as select 成绩 from 学生成绩 where 学号 = 学号 and 课程号 = (select 课程号 from 课程表 where 课程名 = 课程名)go create procedure 录入入校成绩( 学号 char(10), 入校成绩 int) as insert into 学生基本信息(学号,入校成绩) values(学号,入校成绩)gocreate procedure 修改入校成绩( 学号 char(10),

15、入校成绩 int) as update 学生基本信息 set 入校成绩 = 入校成绩 where 学号 = 学号gocreate procedure 查询入校成绩(学号 char(10) as select 入校成绩 from 学生基本信息 where 学号 = 学号gocreate procedure 输出入校成绩( 学号 char(10) as select 入校成绩 from 学生基本信息 where 学号 = 学号gocreate procedure 查询信息( 学号 char(10) as select 课程名, 成绩 from 学生成绩表,课程数据表,课程表 where 学生成绩表

16、.课程号 = 课程表.课程号 and 学生成绩表.学号 = 学号 gocreate procedure 报表 ( 学号 char(10)as select 课程名, 成绩 from 学生成绩表,课程表 where 学生成绩表.课程号 = 课程表.课程号 and 学生成绩表.学号 = 学号 go五:创建触发器create trigger 更新学号 on 学生基本信息 for updateas begin if( columns_updated()& 1) 0 update 学生成绩表 set 学生成绩表.学号 = ( select a.学号 from inserted a) where 学生成绩

17、表.学号 = ( select b.学号 from deleted b) endcreate trigger 更新课程号 on 课程表 for updateas begin if( columns_updated()& 1) 0 update 课程表 set 课程表.课程号 = ( select a.课程号 from inserted a) where 课程表.课程号 = ( select b.课程号 from deleted b) endcreate trigger 删除学号 on 学生基本信息for deleteas begin delete from 学生成绩表 where 学生成绩表.学号 = (select 学号 from deleted)end 六:截图学生基本信息课程表学生成绩表七:小结通过对该课程的实验设计,我们不仅系统的复习了SQL的指令用法,还深入了解了SQL数据库的功能,对Transact-SQL命令熟练运用。欢迎您的光临,Word文档下载后可修改编辑.双击可删除页眉页脚.谢谢!让我们共同学习共同进步!学无止境.更上一层楼。THANKS !致力为企业和个人提供合同协议,策划案计划书,学习课件等等打造全网一站式需求欢迎您的下载,资料仅供参考

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信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 

客服