一、实验目的
熟悉使用存储过程来进行数据库应用程序的设计。
二、实验内容与要求
对学生-课程数据库编写存储过程,完成以下一些功能:
1, 统计“离散数学”课程的成绩分布情况,即按照各分数段来统计人数。
2, 统计任意一门课程的平均成绩。
3, 将学生选课成绩从百分制改为等级制(即A、B、C、D、E)。
三、实验完成情况(主要内容,操作步骤、算法描述或程序代码)
1、由于之前建立的学生选课数据库里并没有离散数学这门课,所以为了完成实验得在数据库的course表和sc表中添加关于离散数学的相关内容。
2、统计“离散数学”课程的成绩分布情况,即按照各分数段来统计人数。
(1)首先建立一个表存放执行后的结果。
(2)写存储过程
具体的代码:
CREATE DEFINER=`root`@`localhost` PROCEDURE `countSoreP`()
BEGIN
declare less60 smallint default 0; /*x <= 60*/
declare b60a70 smallint default 0;
declare b70a80 smallint default 0;
declare b80a90 smallint default 0;
declare more90 smallint default 0;
declare countcno char(4) default '****';
SELECT cno
INTO countcno FROM course
WHERE cname = '离散数学';/*确定course表中有离散数学这门课*/