数据库实验报告六-存储过程(共6页).docx
《数据库实验报告六-存储过程(共6页).docx》由会员分享,可在线阅读,更多相关《数据库实验报告六-存储过程(共6页).docx(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上HUNAN UNIVERSITY数据库实验报告学生姓名 学生学号 专业班级 指导老师 2017 年5月 24日数据库系统概论实验报告(六)题目:PL/SQL存储过程姓名:Nomad日期:2017.5.24一、 实验环境1、 硬件:联想笔记本电脑2、 操作系统:Windows 7旗舰版3、 应用软件:MySQL 6.3,Navicat Preminum 11.2.16二、 实验内容熟悉使用存储过程来进行数据库应用程序的设计。1、 统计离散数学的成绩分布情况,即按照各分数段统计人数。代码如下:DELIMITER $ CREATE PROCEDURE sumScore()
2、/*统计课程离散数学 各分数段人数*/BEGIN declare less60 smallint default 0; /*90*/ declare countcno char(4) default *; SELECT Cno INTO countcno FROM course WHERE cname = 数学; /*确保course表中有数学这门课*/ SELECT COUNT(*) INTO less60 FROM sc WHERE cno = countcno AND grade = 60 AND grade = 70 AND grade = 80 AND grade = 90; /*将
3、结果存入新表sumScore中*/ create table sumScore( scorestage char(10), number smallint); insert into sumScore values(x60, less60); insert into sumScore values(60=x70, b60a70); insert into sumScore values(70=x80, b70a80); insert into sumScore values(80=x=90, more90);END$call sumScore(); /*调用上述存储过程*/首先创建存储过程,然
4、后再调用存储过程。结果如下:(上述结果图截自Navicat软件)可以看到,在stuinfo中新建了一个基本表sumscore,表中内容是数学课程成绩的各分数段的人数。2、 统计任意一门课的平均成绩。代码如下:DELIMITER $ CREATE PROCEDURE scoreAvg()BEGIN declare curname char(40) default null; /*临时存放课程名*/declare curcno char(4) default null; /*临时存放课程号*/declare curavg float; /*临时存放平均成绩*/declare mycursor cu
5、rsor for /*定义游标*/ select cno, cname from course;declare continue handler for not found set curavg=-1;open mycursor; /*打开游标*/fetch mycursor into curcno,curname; /*从结果集中取第一条记录到临时变量中*/repeat /*重复取记录*/select avg(grade) into curavg from sc where cno = curcno;insert into scoreAvg values(curcno,curname,cur
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验 报告 存储 过程
限制150内