SQL实训报告由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“sql实训报告”。
SQL Server 实训报告
班级:
姓名:
学号:
实训名称:SQL Server数据库应用技术
实训题目:教学信息管理
实训目的:通过本次实训,使学生了解开发数据库应用程序的过程;通过数据库设计,加深对数据库基础理论的理解并能灵活运用;掌握利用SQL Server 2000数据库管理系统创建、管理、维护数据库的基本方法及过程;培养开发数据库的设计思维。
实训内容:
本人与郭晓峰主要负责‘教学信息管理 ’系统。
主要包括数据的导入和导出、数据库结构的分析与建立、表关系的添加、查询、外关键字的约束、检查约束、默认值、试图、表存储过程和触发器的学习,以及在表的操作过程中,有查看表信息、查看表属性、修改表中的数据、删除表中的数据及修改表和删除表的操作。本人主要负责数据的导入,数据库的建立,查询
数据库的建立:包括数据附加 分离
数据导入:导入EXCEL表中各个数据(学生信息表 班机信息表 学生成绩表 授课表教师表 课程信息表)
查询:查询学生记录数查询成绩平均分上课人数 学校人员 低于平均分者 学生信息 低于平均分者自定义函数
一 总体设计思路
当看到这个题目我想到一个完整的教学信息管理应包括:学生信息表、班级信息表、课程信息表、学生成绩表、教师表、授课表等。在整个系统中有两个实体:学生和老师。
二 表结构
我的系统有六张表组成:
学生信息表
列名数据类型宽度允许空值说明学号char4否主键姓名char10是性别char2是默认值:男班级号char8是专业char20是系别char20是联系电话char20是入学日期datetime8是备注char50是班级信息表
列名数据类型宽度允许空值说明班级号Char8否主键、外键年级Char8是班主任Char8是教师号char8是课程信息表
列名数据类型宽度允许空值说明课程号Char8否主键课程名称Char10是课程类型Char8是学分Char8是课程说明Char10是学生成绩表
列名数据类型宽度允许空值说明学号Char8否主键班级号Char8是学期Char8是课程号Char8
是课程名称Char8是成绩decimal8是教师表
列名数据类型宽度允许空值说明教工号Char8否主键教师姓名Char8是性别Char8是职称Char8是授课表
列名数据类型宽度允许空值说明教工号Char8否主键课程号char8是Excel表格主要如下: 班级信息
学生信息
学生成绩
教师表
授课表
课程信息:
二 数据库的建立:
1在开始菜单中选择“程序——MicrosoftSqlServer——企业管理器”选型,就启动了企业管理器,打开工具窗口如图所示
2在企业管理器树状目录窗口中展开一个服务器组,选定服务器。然后在该服务器下的‘数据库’结点上单击鼠标右键,快捷菜单中的‘新建数据库’选项出现数据库属性对话框,如下图所示
3数据库属性有三个标签,用来数据名称和数据文件,日志文件的名称、位置、初始大小和属性等内容。
在‘常规‘标签的名称文本框中输入’教学管理系统‘选择服务器默认设置的排序规则名称 4数据文件、日志文件均按服务器默认的数值
三 数据的导入如下:
1在‘教学管理系统‘数据库节点上单击鼠标右键’,在‘所有任务’菜单上单击‘导入数据’选项启动后,显示初始工作界面如下图:
‘数据源’选择microsoftExcel 97-2000,‘文件名’选择所需的表,单击下一步,过程如下图所示:
四 查询过程
(1)查询学生信息的学生人数。
use 教学信息管理
declare @recordcount int
select @recordcount=count(*)from 学生信息表
select @recordcount as '学生表(学生信息表)中记录数'
go
查询结果
(2)查询学校人员
use 教学信息管理
select 教师姓名+职称as '学校人员'
from 教师表
查询结果
(3)查询平均分,首先要自定义函数
1、use 教学信息管理
go
create function average_1()
returns real
begin
declare @aver real
select @aver=(select avg(成绩)from 学生成绩)
return @aver
end2、use 教学信息管理
go
select dbo.average_1()as 总平均分
select * from 学生成绩$
where 成绩 > dbo.average_1()
查询结果
(4)查询低于平均分人数
查询结果
use 教学信息管理
select distinct 学号 as 分数低于平均分者
from 学生成绩
where 成绩
(5)查询学生信息
use 教学信息管理
select 学号,性别,系别,专业,联系电话,入学日期,备注
from 学生信息表
order by 学号
查询结果
(6)查询上课人数
use 教学信息管理
go
declare @record int
select @record=count(*)from 学生信息表
if @record>40
begin
print '该班有'+ ltrim(str(@record))+ '人'
print '进行分班上课'
end
else
begin
print '该班有'+ltrim(str(@record))+ '人'
print '单班上课'
end
查询结果
五 实训总结
我们进入了一个新的充满机遇与挑战的时代,信息系统在管理各项事务中有着普遍的应用,促进了企业管理工作的提升。管理信息系统是为管理服务的,它的开发和建立使企业摆脱落后的管理方式,实现管理现代化的有效途径。管理信息系统将管理工作统一化、规范化、现代化,极大地提高了管理的效率,使现代化管理形成统一、高效的系统。管理信息系统使用系统思想建立起来的,以计算机为信息处理手段,以现代化通信设备为基本传输工具,能力管理决策者提供信息服务的人机系统,这无疑是将管理与现代化接轨,以科技提高管理质量的重大举措。管理信息系统将大量复杂的信息处理交给计算机,使人和计算机充分发挥各自的特长,组织一个和谐、有效的系统,为现代化管理带来便捷。?
数据库是计算机应用的一项重要技术。通过这次的实训,学到了很多的东西,首先是小组成员的协调工作,分配工作,知道了团结的力量与重要性,其次是我把课本里的难关攻克了,查询就是我的难关,在这两周的实训中,了解了查询的相关内容,对查询再也不是茫然的!。本数据库与课本内容紧密结合,结构紧凑,根据所学知识,建立了教学性能系管理系统,建表时也有很多困难,要考虑字段的类型,长度、主键的建立等等
Excel表的导入也不是那么顺利,经过失败的尝试,还是完美的导入到数据库中。
查询是SqlServer 中的重中之重,在制作过程中,也是小组最努力的地方,了解查询语句的先后顺序,例如 selectfromwherebegincreate „„这些单词的在Sqlserver 中的主要功能。有时在查询中会遇到把它们的顺序写错,有时会把表里的字段弄错。但最终还是克服了种种难题,经过我们的努力最终完成了教学信息管理系统。
虽然不是最好的,但我相信,只要努力了,付出了,把不明白的弄懂了,学会了,才是关键!