数据库实验五答案_第1页
数据库实验五答案_第2页
数据库实验五答案_第3页
数据库实验五答案_第4页
数据库实验五答案_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库实验五答案1. 创建一个存储过程,查看001号课程的选修情况,包括学生学号、姓名和成绩,然后执行该过程;create procedure s11asselect student.sno,sname,scorefrom student join sc on student.sno=sc.snowhere cno='001'goexecute s112. 创建一个存储过程,通过学生学号来查询学生选修情况,包括学生学号、姓名和成绩,然后执行该过程;create procedure s12 cnumber char(5)asselect student.sno,sname,sco

2、refrom student join sc on student.sno=sc.snowhere student.sno= cnumbergoexecute s12 '00001'3. 创建一个存储过程,通过学生学号来查询学生选修情况,默认查询学号为00001的选修情况,包括学生学号、姓名和成绩,然后执行该过程;create procedure s13 cnumber char(5)='00001'asselect student.sno,sname,scorefrom student join sc on student.sno=sc.snowhere st

3、udent.sno= cnumbergoexecute s13 '00005'execute s134. 创建一个存储过程,获得选修某门课程的总人数,然后在执行该过程后把总人数显示出来;create procedure s14 cnumber char(5),ccount int outputasselect ccount=count(*) from sc where o=cnumbergodeclare ccount intexecute s14 '001' ,ccount outputselect ccount5. 创建一个存储过程,通过学号和课程号进行成绩

4、查询,如果查询结果为空,则显示“该学生没有选这门课”,返回0,如果查询结果低于60分,则显示“该学生考试成绩不及格”,返回1,如果查询结果在60-85之间,则显示“该学生考试成绩为良”,返回2,如果查询结果大于85,则显示“该学生考试成绩为优秀”,返回3,然后执行该过程查询学号00001的选课成绩,并把返回结果显示出来。create procedure s16 sno char(5),cno char(3)asdeclare s intselect s=scorefrom scwhere cno=cno and sno=snoif s=NULLbeginprint '该学生没有选这门课

5、'return 0endelse if s<60beginprint '该学生考试成绩不及格'return 1endelse if s<85beginprint '该学生考试成绩为良'return 2endelse beginprint '该学生没考试成绩为优'return 3endgo declare result intexec result=s16 '00001','004'print result6. 通过对象资源管理器创建问题5的存储过程。7.声明一个只读游标,数据来源是表Studen

6、t的所有情况,按照名字排序,打开该游标,查看该游标一共有多少行,提取第1行数据,第2行数据,第3行数据,试试把当前行的年龄改为50看看;declare s_sur4 cursorforselect * from student order by sname for read onlyopen s_sur4select cursor_rowsfetch s_sur4fetch next from s_sur4fetch next from s_sur4update studentset sage=50where current of s_sur4fetch last from s_sur4出现错

7、误,因为只是可读8.声明一个可滚动(SCROLL)的只读游标,数据来源是选择表Student的姓名和学号,按照名字排序,提取第5行数据,并把数据的学号和姓名赋予给变量学号和姓名(对比9理解SCROLL的作用);declare s_sur7 scroll cursorforselect sno,sname from student order by sname for read onlyopen s_sur7declare 学号 char(5),姓名 varchar(10)fetch absolute 5 from s_sur7into 学号, 姓名select 学号,姓名fetch last

8、from s_sur79.声明一个具有灵敏性(INSENSITIVE)的游标,数据来源是表Student的所有情况,按照名字排序;declare s_sur8 insensitive cursorforselect sno,sname from student order by sname for read only10.声明一个可更新的游标,数据来源是表Student的所有情况,打开该游标,提取第1行数据,并把当前行的年龄改为50,然后查看基本表看是否已经修改;declare s_sur10 cursorforselect* from student for updateopen s_sur10fetch s_sur

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论