实验五 使用T-SQL编写存储过程访问数据库

2020-06-16 22:11

本科实验报告

课程名称: 数据库系统原理

实验项目:使用T-SQL编写存储过程访问数据库

实验地点: 4606

专业班级: 学号:

学生姓名:

指导教师:

2012 年 11 月 8 日

一 目的与要求

熟悉使用存储过程来进行数据库应用程序的设计。

二 实验设备与环境

在实验一中安装的 RDBMS 及其 T-SQL 执行引擎。

三 实验内容、实验记录及实验结果与分析

对学生-课程数据库,编写存储过程,完成下面的功能:

(1)统计某课程(如离散数学)的成绩分布情况,即按照各分数段统计人数;

T-SQL语句:

create procedure p_satscore @cno char(4) --course number as

begin

declare @score1 int declare @score2 int declare @num int

declare @cname varchar(10) --course name

set @cname=(select cname from course where cno=@cno) print '<'+@cname+'>'+'考试成绩 按照分数段统计情况' set @score1='100' set @score2='90' while(@score1>=0)

begin

set @num=(select count(*) from sc where cno=@cno and grade between @score2 and @score1)

print str(@score2)+'至'+str(@score1)+'分 人数为'+str(@num) set @score1=@score2-1 if @score1>=60

set @score2=@score2-10 else

set @score2=0 end end

EXEC p_satscore @cno='3';

查询结果:

▼ (2)统计任意一门课的平均成绩。

T-SQL语句:

create procedure avg_Course

@HCourse char(20) as

DECLARE @gradeAvg float

select @gradeAvg=avg(Grade) from SC,Course

where Cname=@HCourse and SC.Cno=Course.Cno

print '课程名称:' + convert(varchar(10),@HCourse) print '平均成绩:' + convert(varchar(10),@gradeAvg) go

EXEC avg_Course '管理信息系统';

查询结果:

四 实验遇到的问题和解决方法

1. T-SQL语句初次接触,感觉还是比较难。相对于之前学过的C语言等,嵌入式数据库语言的语法结构不是很明白。或许是刚开始使用,比较生疏。

2. 开始编写时利用指导书所给代码,运行出错。检查之后发现是数据库对象选择错误,修改之后运行成功。

3. 第二步不明白在那里看运行结果,查书、查资料后才发现还要新建一个查询,EXEC中才会显示出来结果,最终试验成功。

五 实验心得

1. 对T-SQL语句的模式有了初步的认识和掌握,觉得以后有时间了必须好好学一学。查书查资料过程中发现利用T-SQL语句还能编写C语言时候有关的练习程序,有趣也有兴趣学学。

2. 数据库的五个实验全部完成,掌握了基本的数据库管理经验,和相关的利用SQL语句创建表,查询数据等项目。课本的理论必须在实践中慢慢明白并掌握,这也是实验的最终目的所在。

3. 实验中存在的问题也很多,不过都一一化解,通过各种途径。老师和同学的指导帮助也是实验成功的基础,表示感谢。学习、实验中遇到问题也要及时询问,才能克服各种阻碍,获得最终的试验成功。


实验五 使用T-SQL编写存储过程访问数据库.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《说文解字序》及翻译

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: