--创建新表sscore
create table sscore(
sname char(20),
cname char(40),
grade smallint
);
--使用游标,查询所有大于等于90分的学生的姓名、课程名和分数,把结果放入sscore表中
delimiter $$
create procedure proc_score()
begin
declare s_sname char(20);
declare c_cname char(40);
declare c_grade smallint;
declare done int default 0;
declare cur cursor for select sname,cname,grade from student s,course c,sc
where sc.sno=s.sno and sc.cno=c.cno and sc.grade>=90;
declare continue handler for not found set done=1;
open cur;
fetch cur into s_sname,c_cname,c_grade;
while (!done) do
insert into sscore(sname,cname,grade) values(s_sname,c_cname,c_grade);
fetch cur into s_sname,c_cname,c_grade;
end while;
close cur;
end
$$
delimiter ;