欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    数据库实验《实验6》.doc

    • 资源ID:23865687       资源大小:186KB        全文页数:7页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数据库实验《实验6》.doc

    【精品文档】如有侵权,请联系网站删除,仅供学习与交流数据库实验实验6实验6实验地点8-318实验类型设计实验学时1实验日期2018-6-14 撰写注意:版面格式已设置好(不得更改),填入内容即可。一、 实验目的1. 掌握系统数据类型的特点和功能。2. 掌握创建、修改表结构的方法。3. 掌握插入、更新和删除表数据的方法。二、 实验内容1.查询所有班级的期末成绩平均分,并按照平均分降序排序。2.查询教师基本信息和教授课程信息,其中包括未分配课程的教师信息。3.查询160501班级中选修了“韩晋升”老师讲授的课程的学生学号、姓名、课程号和期末成绩。4.查询每门课程的课程号、课程名和选修该课程的学生人数,并按所选人数升序排序。5.查询两门及以上课程的期末成绩超过80分的学生姓名及平均成绩。6.查询入学考试成绩最高的学生学号、姓名和入学成绩。7.查询同时教授c05127号和c05109号课程的教师信息。8.查询至少选修了姓名为“韩吟秋”的学生所选修课程中一门课程的学生学号和姓名。9.查询所有教授c05127号课程的教师信息。10.查询没有被任何学生选修的课程编号、课程名称和学分。11.查询“C语言”课程期末成绩比“电子技术”课程期末成绩高的所有学生的学号和姓名。12查询所有班级期末平均成绩的最高分,并将其赋值给变量,通过PRINT语句输出。13.使用游标输出学生姓名、选修课程名称和期末考试成绩。14.使用游标统计每个学院教师所开设课程的选修率。15.使用游标计算学生期末成绩的等级,并更新level列。三、 实验环境1. 操作系统:Windows XP2. 开发软件:SQL Server 2008四、 提交文档提交本实验报告(电子版),文件名命名:学号 姓名实验X:XXXXXXX.doc教师将批阅后(有分数)的全体学生实验报告刻入一张光盘存档,保证光盘可读。五、 附:源代码1.select studentno,AVG(final) as 平均分 from score group by studentno order by AVG(final)2.select * from teacherselect * from studentselect * from courseinsert into course(courseno,cname,ctype,period,credit)values('c05103','高等数学','必修',64,4.0) select * from scoreinsert into score(studentno,courseno,usually,final)values('16122210009','c05103',87.00,82.00)insert into teacher(teacherno,tname,major,prof,department)values('t05001','韩晋升','软件工程','教授','计算机学院')select * from classinsert into class(classno,classname,department,monitor)values('160501','计算机','计算机学院','张三')select * from teach_classinsert into teach_class(teacherno,classno,courseno)values('t05001','160501','c05103')select * from teacherselect * from courseselect * from scoreselect classno,AVG(final) as 平均分 from student join scoreon student.studentno=score.studentno group by classnoorder by AVG(final) descselect teacher.*,cname from teacher left join teach_classon teacher.teacherno=teach_class.teachernoleft join course on teach_class.classno=course.courseno3.select student.studentno,sname,cname,final from studentjoin score on student.studentno=score.studentnojoin course on course.courseno=score.coursenowhere score.courseno in(select courseno from teach_class join teacher on teach_class.teacherno=teacher.teachernowhere tname='韩晋升')and classno='090501'4.select course.courseno,cname,COUNT(studentno) fromscore join course on score.courseno=course.coursenogroup by course.courseno,cnameorder by COUNT(studentno) desc5.select sname,AVG(final) from score join student on score.studentno=student.studentnowhere final>=80group by student.studentno,snamehaving COUNT(courseno)>=26.select studentno,sname,point from student wherestudentno=(select top 1 studentno from student order by point)7.select teacher.teacherno,tname,major ,prof,department from teacher join teach_class on teacher.teacherno=teach_class.teachernowhere courseno='c05127'8.select distinct student.studentno,sname from scorejoin student on score.studentno=student.studentnowhere courseno in(select courseno from score join student onscore.studentno=student.studentnowhere sname='韩吟秋')and sname!='韩吟秋'9.select * from teacher where teacherno in(select teacherno from teach_class wherecourseno='c05127')10.select courseno,cname,credit from course where not exists(select * from score where score.courseno=course.courseno)11.select student.studentno,sname from score sc1 join studenton (sc1.studentno=student.studentno) join course c1 on(sc1.courseno=c1.courseno)where ame='c语言' and exists(select * from score sc2 join course c2 on(sc2.courseno=c2.courseno)where ame='电子技术' and sc1.studentno=sc2.studentnoand sc1.final>sc2.final)12.declare max numeric(6,2)select max=MAX(平均分) from (select classno as 班级号,AVG(final) as 平均分 from scorejoin student on (score.studentno=student.studentno)join course on (course.courseno=score.courseno)where final is not nullgroup by classno) tprint '所有班级期末平均成绩的最高分:'+cast(max as varchar(6)13.declare sname nchar(8),cname nchar(10),final numeric(6,2)declare sc_cursor cursor forselect sname,cname,finalfrom score join student on(score.studentno=student.studentno)join course on(score.courseno=course.courseno)open sc_cursorfetch next from sc_cursor into sname,cname,finalprint '学生姓名 课程名称 期末成绩'print '-'while FETCH_STATUS=0beginprint sname+cname+cast(final as nchar(6)fetch next from sc_cursor into sname,cname,finalendclose sc_cursordeallocate sc_cursor14.declare department nchar(30),num int,avg floatdeclare cur cursor staticfor select department,count(*) as '选修课数' from classwhere class.classno in(select student.classno from student group by classno)group by departmentopen curfetch curinto department,numset avg=num/(select COUNT(*) from class where department=department)print departmentprint avgwhile FETCH_STATUS=0beginfetch next from curinto department,numset avg=num/(select COUNT(*) from class where department=department)print departmentprint avgendclose curdeallocate cur15.declare sname nchar(30),cname nchar(30),final floatdeclare stu cursor staticforselect sname,final,cnamefrom student,score,coursewhere student.studentno=score.studentno and course.courseno=score.coursenoopen stufetch stuinto sname,final,cnameif final>=90print N'优'+sname+cnameelse if final>=80 and final<90print N'良'+sname+cnameelse if final>=70 and final<80print N'中'+sname+cnameelse if final>=60 and final<70print N'及'+sname+cnameelse if final<60print N'差'+sname+cnamewhile FETCH_STATUS=0beginfetch next from stuinto sname,final,cnameif final>=90print N'优'+sname+cnameelse if final>=80 and final<90print N'良'+sname+cnameelse if final>=70 and final<80print N'中'+sname+cnameelse if final>=60 and final<70print N'及'+sname+cnameelse if final<60print N'差'+sname+cnameendclose studeallocate stu.精品文档.实验名称

    注意事项

    本文(数据库实验《实验6》.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开