SQL Server课程设计报告
学生选修课管理系统
院 系:
专 业: 农林经济管理15-3 学 号: 姓 名: 指导教师:
20xx年 6 月
目 录
1.系统开发背景 ................................................... 2
1.1课题简介 ................................................... 3
1.2设计目的 ................................................... 3
1.3设计内容 ................................................... 3
2. 需求分析 ...................................................... 3
1.1数据需求………………………………………………………………………4
1.2功能需求………………………………………………………………………4
3.概念结构设计 ................................. 错误!未定义书签。
4. 逻辑结构设计 .................................................. 4
5.物理结构设计 ................................. 错误!未定义书签。
6.源程序代码 .................................................... 5
6.1 数据库程序 ................................................... 6
6.2 备份程序 ..................................................... 7
6.3 表程序 ....................................................... 6
6.4 视图 ......................................................... 8
6.5 存储过程 ..................................................... 7
6.6 触发器 ....................................................... 8
7.数据库表及时视图截图 ........................................... 9
8.结束语 ....................................................... 12
1.系统开发背景
1.1课题简介
随着现代科技的高速发展,设备和管理的现代化,在实际工作中如何提高工 作效率成为一个很重要的问题。而建立管理信息系统是一个很好的解决办法。 经过三年的学习,我们对计算机方面的知识有了很大的提升,本着理论联系 实际的宗旨,通过学校提供的这次软件技术实践的机会,在指导教师的帮助下, 历经两周时间,我自行设计一套教学管理系统,在下面的各章中,我将以这套教 学管理信息系统为例,谈谈其开发过程和所涉及到的问题。
1.2设计目的
应用对数据库系统原理的理论学习,通过上机实践的方式将理论知识与实践 更好的结合起来,巩固所学知识。
数据库应用 课程实践:实践和巩固在课堂教学中学习有关知识,熟练掌握对于给定结构的数据库的创建、基本操作、程序系统的建立和调试以及系统评价。 数据库原理 软件设计实践:实践和巩固在课堂教学中学习的关于关系数据库原理的有关知识和数据库系统的建立方法,熟练掌握对于给定实际问题,为了建立一个关系数据库信息管理系统,必须得经过系统调研、需求分析、概念设计、 逻辑设计、物理设计、系统调试、维护以及系统评价的一般过程,为毕业设计打 下基础。
1.3设计内容
运用基于E-R 模型的数据库设计方法和关系规范化理论做指导完成从系统的分析到设计直至系统的最终实现,开发教学管理信息系统,完成教学管理信息系统的全部功能,包括学生管理子系统,教师管理自系统,后勤管理子系统。 首先做好需求分析,并完成数据流图和数据字典。
其次做概念分析,利用实体联系的方法将需求分析的用户需求抽象为信息结构,得到E-R 图。
然后就是逻辑结构设计,将E-R 图转换为计算机系统所支持的逻辑模型
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,初始大小:2MB,最大空间:20MB,增加量:2MB。 备份设备名:rsxtbf,备份文件:rsbf.bak
(5)索引:对于每一数据表关于主关键字建立索引文件。
(6)设置触发器:
要求学生基本信息中的学号被修改时,学生的选修课信息表被修改。
要求在学生基本信息中插入新的学号时,学生的选修课信息表被插入新的学号。 要求在学生基本信息中删除工号时,学生的选修课信息表的学号被删除。
(7)设置视图:
为用户提供包含学号,姓名,性别,年龄,地址,专业班级,成绩,课程号的视图。
(8)设置存储过程:
根据用户所提交的成绩信息,为用户提供关于学生的学生基本信息(学号,姓名,
性别,年龄,地址,专业班级)。
根据用户所提交的成绩信息,为用户提供关于学生的选课信息(课程号,学号,
分数)。
6.源程序代码
6.1 数据库程序
create database 学生选课管理系统
on primary
(name=选课管理,
filename='d:\选课管理.mdf',
size=2,
maxsize=20,
filegrowth=2)
log on
(name=选课管理_log,
filename='d:\ 选课管理_log.ldf',
size=2,
maxsize=20,
filegrowth=2)
6.2 备份程序
sp_addumpdevice 'disk','rsxtbf','d:\beifen\rsbf.bak'
go
backup database 学生选课管理系统 to rsbf
6.3 表程序
(1)学生表基本信息表的建立
Create table 学生基本信息
( 学号 char(9) not null,
专业班级 varchar(20) not null, 姓名 varchar(10) not null, 性别 varchar(2) not null, 年龄 char(2) ,
地址 varchar(20) not null, 电话 varchar(11) not null, constraint PK_STUDENT primary key (学号)
)
(2)选修课程基本信息表的建立
Create table 选修课程基本信息
( 课程号 char(5) not null,
课程名 varchar(10) not null,
任课教师 varchar(8) not null,
教师电话 varchar(11) not null,
上课地点 varchar(20) not null,
学时 smallint not null,
学分 int not null,
constraint PK_COURSE primary key (课程号)
)
(3)成绩信息表的建立
Create table 成绩信息
( 成绩 varchar(3) not null,
学号 char(9) not null,
课程号 char(5) not null,
foreign key(学号) references 学生基本信息(学号),
foreign key(课程号) references 选修课程基本信息(课程号) )
6.4 视图
create view 学生基本信息视图(学号,专业班级,姓名,性别,年龄,地址,电话) as select.学生基本信息.学号,学生基本信息.专业班级,姓名,性别,年龄,地址,电话
from 学生基本信息,成绩信息
where 学生基本信息.学号=成绩信息.学号
6.5 存储过程定义
1.关于学生基本信息表的存储过程
create procedure yg
@xl varchar(8)=null
as if @xl is null
print '请输入学号!'
else
select 学生姓名,性别,地址,年龄,专业
from 学生基本信息,成绩信息
where学生基本信息.学号=成绩信息.学号
2.关于课程基本信息表的存储过程
create procedure yg
@xl varchar(8)=null
as if @xl is null
print '请输入课程号!'
else
select 学生姓名,性别,地址,年龄,专业
from 基本信息,成绩信息
where课程基本信息.课程号=成绩信息.课程号
6.6 触发器
(1).修改学号的触发器
create trigger goha on学生基本信息
for update
as
begin
if(columns_updated()&01)>0
update 成绩信息
set成绩信息.学号=(select a.学号 from inserted a)
where成绩信息.学号=(select b.学号 from deleted b) end
(2)修改课程号的触发器
create trigger goha on课程基本信息
for update
as
begin
if(columns_updated()&01)>0
update 成绩信息
set成绩信息.课程号=(select a.课程号 from inserted a) where成绩信息..课程号=(select b.课程号 from deleted b) end
(3)插入新学号的触发器
create trigger jbinsert
on 学生基本信息
for insert as
if(columns_updated()&1)>0
begin
insert into 成绩信息(学号)
select 学号,
end
(4)插入课程号的触发器
create trigger jbinsert
on 选修课程基本信息
for insert as
if(columns_updated()&1)>0
begin
insert into 成绩信息(课程号)
select 课程号,
end
(5)删除学号的触发器
create trigger check_delete
on 学生基本信息
for delete
as
begin
delete成绩信息
where成绩信息.学号=(select 学号 from deleted) end
(6)删除课程号的触发器
create trigger check_delete
on 选修课程基本信息
for delete
as
begin
delete成绩信息
where成绩信息.课程号=(select 课程号 from deleted) end
7.数据库表及时视图截图
(1)学生表基本信息表
(2)选修课程基本信息表
(3)成绩表
(4)视图
8.结束语
在张老师的指导下,运用老师课堂上讲的知识,我设计出了一个可以查询学生选课关了的系统。这次课程设计是对这学期数据库课程的一个知识综合,它需要运用到前面所学的知识。通过这次课程设计,使我将平时所学的知识运用到实践中,提高了自己实际上机操作的能力。在实际操作中发现平时的知识的不足。总之,这是对平时掌握知识的一次检验,也是一次对平时不足的弥补。感谢张老师这学期对课本知识和做人为事的教导.使我们在轻松愉快中掌握了数据库的基本操作。忠心的
第二篇:10计算机应用(对)-SQL Server数据库管理与编程课程设计
苏 州 市 职 业 大 学
课程设计说明书
名称 20xx年6月11日至20xx年6月15日共1周
院 系 计算机工程系 班 级 10计算机应用(对口) 姓 名
系 主 任 教研室主任 指导教师
苏 州 市 职 业 大 学
课程设计任务书 课程名称:
起讫时间:
院 系:
班 级:
指导教师:
系 主 任: 2012.6.11~2012.6 .15 计算机工程系 10计算机应用(对口)
目 录
一、题目介绍 ...................................................... 1
1.1 开发背景 ................................................... 1
1.2 开发工具介绍 ............................................... 3
二、需求分析和数据库设计 .......................................... 1
2.1 需求分析 ................................................... 1
2.2 概念设计 ................................................... 3
2.3 逻辑设计 ................................................... 3
三、数据库布署 .................................................... 1
3.1 安装和配置SQL Server 2005 ................................... 1
3.2 创建和配置数据库 ........................................... 3
四、表、索引的创建及数据完整性 .................................... 1
4.1 表的创建 ................................................... 1
4.2 索引的创建 ................................................. 3
4.3 数据完整性的实现 ........................................... 3
五、数据库试运行 .................................................. 1
5.1 视图的实现 ................................................. 1
5.2 存储过程的实现 ............................................. 3
5.3 触发器的实现 ............................................... 3
六、数据库的安全性 ................................................ 1
6.1 登录名的创建 ............................................... 1
6.2 用户及角色的创建 ........................................... 3
6.3 权限的分配 ................................................. 3
七、数据库的维护 .................................................. 1
7.1 备份策略 ................................................... 1
7.2 维护计划 ................................................... 3
八、其它功能的实现 ................................................ 1
8.1 表的创建 ................................................... 1
8.2 索引的创建 ................................................. 3
九、遇到的问题及解决方法 .......................................... 1
十、课程设计总结 .................................................. 1
十一、参考文献 .................................................... 1
(课程设计报告排版必须严格按照下面的格式进行排版,包括序号编排,字体,字号,行距,参考文献格式等内容)
一、题目介绍
(正文为宋体,五号字 行间距为21)
中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共和国中华人民共
二、需求分析和数据库设计
2.1需求分析
(正文为宋体,五号字 行间距为21)
2.2概念设计
十一、参考文献
[1] 权明富,齐佳音,舒华英.客户价值评价指标体系设计[J].南开管理评论,2004,7(3):17-18.