SQLServer课程设计报告Word格式文档下载.docx
《SQLServer课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《SQLServer课程设计报告Word格式文档下载.docx(15页珍藏版)》请在冰豆网上搜索。
5.物理结构设计5
6.源程序代码5
6.1数据库程序6
6.2备份程序6
6.3表程序6
6.4视图7
6.5存储过程7
6.6触发器8
7.数据库表及时视图截图9
8.结束语11
1.系统开发背景
1.1课题简介
随着现代科技的高速发展,设备和管理的现代化,在实际工作中如何提高工
作效率成为一个很重要的问题。
而建立管理信息系统是一个很好的解决办法。
经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系
实际的宗旨,通过学校提供的这次软件技术实践的机会,在指导教师的帮助下,
历经两周时间,我自行设计一套教学管理系统,在下面的各章中,我将以这套教
学管理信息系统为例,谈谈其开发过程和所涉及到的问题。
1.2设计目的
应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践
更好的结合起来,巩固所学知识。
数据库应用课程实践:
实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。
数据库原理软件设计实践:
实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、
逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打
下基础。
1.3设计内容
运用基于E-R模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发教学管理信息系统,完成教学管理信息系统的全部功能,包括学生管理子系统,教师管理自系统,后勤管理子系统。
首先做好需求分析,并完成数据流图和数据字典。
其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R图。
然后就是逻辑结构设计,将E-R图转换为计算机系统所支持的逻辑模型
2.需求分析
1数据需求
数据字典
主要涉及到以下几个表,分别为:
学生基本信息表,课程表,专业信息表,课程设置表,学生选课表,学生与专业之间的属于表以及管理人员的密码表。
以下是数据字典:
数据库表名
关系模式名称
学生学籍信息表
学生
课程基本信息表
课程
选课成绩信息表
成绩
学生基本情况数据表,结构如下:
字段名
字段类型
约束控制
学号
char
Primarykey
学生姓名
varchar
notnull
性别
专业班级
年龄
电话
地址
课程数据表,结构如下:
课程号
主键(primarykey)
课程名称
任课教师
上课地点
课时
int
学分
numeric(2,1)
成绩情况数据表,结构如下:
外键
2.功能需求:
(1)实现学生基本情况的录入,修改,删除等基本操作。
(2)对学生基本信息提供灵活的查询方式。
(3)完成一个班级的学期选课功能。
(4)实现学生成绩的录入,修改,删除等基本操作。
(5)能方便的对学生的个人学期成绩进行查询。
(6)具有成绩统计,排名等功能。
(7)具有留级,休学等特殊情况的处理功能。
(8)能输出常用的各种报表。
(9)具有数据备份和数据恢复功能
3.概念结构设计
(1)学生基本信息:
学号,姓名,性别,专业班级,年龄,电话,地址。
(2)课程基本信息:
课程名,课程号,任课老师,电话,分数,学时,学分。
这些实体间的联系包括
四逻辑结构设计
(1)学生(学号,姓名,性别,年龄,地址,专业班级),其主关键字为学号;
(2)课程(课程名,课程号,任课老师,上课地点,分数,学时,学分),其中主关键字为课程号;
(3)成绩(课程号,学号,分数)其中主关键字为学号和课程号。
可以与学生关系模式合并为:
学生(学号,姓名,性别,年龄,地址,专业班级,成绩,课程号)。
五物理结构设计
(1)数据结构:
设置每一数据表的属性名,类型,宽度。
(2)设置参照属性:
成绩信息(课程号,学号,分数)的学号参照学生基本信息的学号。
成绩信息(课程号,学号,分数)的课程号参照课程基本信息的课程号。
(3)关系:
学生基本信息与成绩信息建立关于学号的关系。
课程基本信息与成绩信息建立关于课程号的关系。
(4)数据库名称:
选课管理系统。
逻辑数据名称:
数据文件:
选课管理.mdf,初始大小:
2MB,最大空间:
20MB,增加量:
2MB。
日志文件:
选课管理_log.ldf,初始大小:
备份设备名:
rsxtbf,备份文件:
rsbf.bak
(5)索引:
对于每一数据表关于主关键字建立索引文件。
(6)设置触发器:
要求学生基本信息中的学号被修改时,学生的选修课信息表被修改。
要求在学生基本信息中插入新的学号时,学生的选修课信息表被插入新的学号。
要求在学生基本信息中删除工号时,学生的选修课信息表的学号被删除。
(7)设置视图:
为用户提供包含学号,姓名,性别,年龄,地址,专业班级,成绩,课程号的视图。
(8)设置存储过程:
根据用户所提交的成绩信息,为用户提供关于学生的学生基本信息(学号,姓名,性别,年龄,地址,专业班级)。
根据用户所提交的成绩信息,为用户提供关于学生的选课信息(课程号,学号,分数)。
6.源程序代码
6.1数据库程序
createdatabase学生选课管理系统
onprimary
(name=选课管理,
filename='
d:
\选课管理.mdf'
size=2,
maxsize=20,
filegrowth=2)
logon
(name=选课管理_log,
\选课管理_log.ldf'
filegrowth=2)
6.2备份程序
sp_addumpdevice'
disk'
'
rsxtbf'
\beifen\rsbf.bak'
go
backupdatabase学生选课管理系统torsbf
6.3表程序
(1)学生表基本信息表的建立
Createtable学生基本信息
(学号char(9)notnull,
专业班级varchar(20)notnull,
姓名varchar(10)notnull,
性别varchar
(2)notnull,
年龄char
(2),
地址varchar(20)notnull,
电话varchar(11)notnull,
constraintPK_STUDENTprimarykey(学号)
)
(2)选修课程基本信息表的建立
Createtable选修课程基本信息
(课程号char(5)notnull,
课程名varchar(10)notnull,
任课教师varchar(8)notnull,
教师电话varchar(11)notnull,
上课地点varchar(20)notnull,
学时smallintnotnull,
学分intnotnull,
constraintPK_COURSEprimarykey(课程号)
)
(3)成绩信息表的建立
Createtable成绩信息
(成绩varchar(3)notnull,
学号char(9)notnull,
课程号char(5)notnull,
foreignkey(学号)references学生基本信息(学号),
foreignkey(课程号)references选修课程基本信息(课程号))
6.4视图
createview学生基本信息视图(学号,专业班级,姓名,性别,年龄,地址,电话)
asselect.学生基本信息.学号,学生基本信息.专业班级,姓名,性别,年龄,地址,电话
from学生基本信息,成绩信息
where学生基本信息.学号=成绩信息.学号
6.5存储过程定义
1.关于学生基本信息表的存储过程
createprocedureyg
@xlvarchar(8)=null
asif@xlisnull
print'
请输入学号!
'
else
select学生姓名,性别,地址,年龄,专业
from学生基本信息,成绩信息
where学生基本信息.学号=成绩信息.学号
2.关于课程基本信息表的存储过程
请输入课程号!
from基本信息,成绩信息
where课程基本信息.课程号=成绩信息.课程号
6.6触发器
(1).修改学号的触发器
createtriggergohaon学生基本信息
forupdate
as
begin
if(columns_updated()&
01)>
update成绩信息
set成绩信息.学号=(selecta.学号frominserteda)
where成绩信息.学号=(selectb.学号fromdeletedb)
end
(2)修改课程号的触发器
createtriggergohaon课程基本信息
set成绩信息.课程号=(selecta.课程号frominserteda)
where成绩信息..课程号=(selectb.课程号fromdeletedb)
(3)插入新学号