实验四 复杂查询

时间:2025-07-08

数据库实验 复杂查询

实验四 复杂查询

一、实验目的

掌握两个表以上的连接查询的应用,包括嵌套查询。 二、实验内容

1、同一数据库中的多表查询

(1)查询比“林红”年纪大的男同学信息。

(2)查询所以学生的选课信息、包括学号、姓名、课号、课程名、成绩。

数据库实验 复杂查询

(3)查询已选课学生的学号、姓名、课程名、成绩。

数据库实验 复杂查询

(4)查询选修了“C语言程序设计”的学生的学号和姓名。

(5)查询与“张虹”在同一个班级的学生学号、姓名、家庭住址。

数据库实验 复杂查询

(6) 查询其他班级中比“051”班所有学生年龄大的学生的学号、姓名。

(7)(选做)查询选修了全部课程的学生姓名。

数据库实验 复杂查询

(8)(选做)查询至少选修了学生“20110002”选修的全部课程的学生的学号、姓名。

(9) 查询学生的学号、姓名、学习课程名及课程成绩。

(10)查询选修了“高数”课且成绩至少高于选修课程号为“002”课程的学生的学号、课程号、成绩,并按成绩从高到底次序排列。

数据库实验 复杂查询

(11) 查询选修3门以上课程的学生的学号、总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。

(12) 查询多于3名学生选修的并以3结尾的课程号的平均成绩。

数据库实验 复杂查询

(13) 查询最高分与最低分之差大于5分的学生的学号、姓名、最高分、最低分。

(14)创建一个表student_other,结构同Student,输入若干记录,部分记录和Student表中的相同。

A.查询同时出现在Student表和student_other表中的记录。

数据库实验 复杂查询

B. 查询Student表和student_other表中的全部记录。

数据库实验 复杂查询

2、多个数据库间的多表查询

(选做)创建一个数据库student_info_other,参数自定。

(1)当前数据库为Student_info,将student_info数据库中的表student_other复制到student_info_other中。

(2)查询同时出现在Student表和student_info_other数据库student_other表中的记录。

数据库实验 复杂查询

3、外连接查询

(1)查询所有课程信息及其选课信息,包含未被学生选修的课程。

(2)查询所有学生信息,所有课程信息及其选课信息,包含未选课课程的学生及未被学生选修的课程。

数据库实验 复杂查询

实验五、视图的创建与使用

一、实验目的

(1)理解视图的概念。

(2)掌握创建视图、测试、加密视图的方法。 (3)掌握更改视图的方法。

(4)掌握用视图管理数据的方法。

二、实验内容 1、创建视图

(1)创建一个名为stuview1的水平视图,从Student_info数据库的student表中查询出所有男生的资料。并在创建视图时使用with check option。

数据库实验 复杂查询

(2)创建一个名为stuview2的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时,并在创建时对该视图加密。

(3)创建一个名为stuview3的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。

\

(4)创建一个名为stuview4的视图,能检索出每位选课学生的学号、姓名、总成绩。

数据库实验 复杂查询

2、查询视图的创建信息及视图中的数据

(1)查看视图stuview1的创建信息。 方法1:通过系统存储过程sp_help查看。

方法2:通过查询表sysobjects。

数据库实验 复杂查询

(2)查看视图的定义脚本。

方法1:通过系统存储过程

sp_helptext.

方法2:通过查询表sysobjects和表syscomments。

(提示:视图的名称保存在表sysobjects的name列,定义脚本保存在表syscommments的text列)。

(3)查看加密视图stuview2的定义脚本。

3、修改视图的定义

数据库实验 复杂查询

修改视图stuview2,使其从数据库Student_info的Course表中查询总学时大于60的所有课程号、课程名、学分。

4、视图的更名与删除

(1)将视图stuview4更名为

stuv4.

(2)将视图stuv4删除。

5、管理视图中的数据

(1)从视图stuview1查询出班级为“051”、姓名为“张虹”的资料。

数据库实验 复杂查询

(2)向视图stuview1中插入一行数据。学号:20110005,姓名:许华,班级:054,性别:男,家庭住址:南京,入学时间:2011/09/01,出生年月:1983/01/09。 原Student表中的内容有何变化? 没有插入时的student表

插入情况:

插入后原student表的变化:

…… 此处隐藏:35字,全部文档内容请下载后查看。喜欢就下载吧 ……
实验四 复杂查询.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219