蓝莓题库

中国大学mooc数据库系统(上):模型与语言慕课答案大全-k8凯发

欢迎来访!

k8凯发-凯发官网入口通识课问答 正文

作者2023-02-27 00:26:54通识课问答 78 ℃0 评论
第1讲-初步认识数据库系统

第1讲模拟练习题随堂测验

1、关于数据库系统和数据库管理系统,下列说法正确的是__________。
    a、数据库系统和数据库管理系统指的是同一软件产品
    b、数据库系统和数据库管理系统指的是不同软件产品
    c、数据库管理系统是软件产品,而数据库系统不仅仅是软件产品
    d、数据库系统是软件产品,而数据库管理系统不仅仅是软件产品

2、关于数据库系统,下列说法正确的是__________。
    a、数据库系统的构成包括计算机/网络基本系统、数据库和数据库管理系统
    b、数据库系统的构成包括计算机/网络基本系统、数据库、数据库管理系统和数据库应用程序
    c、数据库系统的构成包括计算机/网络基本系统、数据库、数据库应用程序和数据库管理员
    d、数据库系统的构成包括数据库、数据库管理系统、数据库应用程序、数据库管理员以及计算机与网络基本系统

3、从用户角度看数据库管理系统的功能,下列说法正确的是__________。
    a、数据库管理系统就是通过数据库语言让用户操作进而提供数据库操纵功能的系统
    b、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义和数据库操纵功能的系统
    c、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义、数据库操纵和数据库控制功能的系统
    d、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义、数据库操纵和数据库控制功能的系统,同时提供了一系列程序能够实现对数据库的各种存储与维护

4、从系统角度看数据库管理系统,其功能包括__________。
    a、数据库语言及其编译
    b、查询实现与查询优化
    c、事务处理
    d、不仅仅有(a)(b)(c)功能,还包括其他功能

5、从系统角度看数据库管理系统,其功能包括__________。
    a、x-查询实现与查询优化
    b、y-事务处理
    c、z-数据存储与索引
    d、不仅仅包含x-、y-、z-功能,还包括其他功能

6、下列哪些功能不是数据库管理系统的功能__________。
    a、完整性控制
    b、并发控制
    c、通讯控制
    d、处理机控制

7、关于数据库系统语言,下列说法正确的是__________。
    a、数据库系统语言包括了ddl和dml
    b、数据库系统语言包括了ddl、dml和dcl
    c、数据库系统语言包括了ddl、dml和c /java
    d、数据库系统语言包括了ddl、dml和程序设计语言

8、关于ddl,下列说法正确的是__________。
    a、ddl是数据库定义语言
    b、ddl是数据库操纵语言
    c、ddl是数据库控制语言
    d、ddl是数据库维护语言

9、关于dml,下列说法正确的是__________。
    a、dml是数据库定义语言
    b、dml是数据库操纵语言
    c、dml是数据库控制语言
    d、dml是数据库维护语言

10、从用户角度看数据库管理系统,其功能包括__________。
    a、数据库定义
    b、数据库操纵
    c、数据库控制
    d、上述全部

11、从用户角度看数据库管理系统,其功能包括__________。
    a、数据库定义
    b、数据库操纵
    c、数据库控制
    d、数据库维护

仅哈工大课程班同学回答a随堂测验

1、1、本课程分数构成是怎样的?
    a、mooc成绩20分 实验成绩20分 期末考试60分
    b、mooc成绩30分 实验成绩20分 期末考试50分
    c、mooc成绩10分 实验成绩30分 期末考试成绩60分
    d、mooc成绩20分 实验成绩30分 期末考试成绩50分

2、2. 本课程教学内容涉及几门mooc?
    a、1门
    b、2门
    c、3门
    d、4门

3、3、本课程mooc教学内容包括多少讲?
    a、10讲
    b、16讲
    c、23讲
    d、40讲

4、4、本课程包括几个实验?
    a、2个
    b、3个
    c、4个
    d、5个

5、5、你的慕课昵称符合本课程的约定吗?

6、6、你已经了解了本课程的学习内容和学习方法

第1讲测验

1、关于数据库系统和数据库管理系统,下列说法正确的是__________。
    a、数据库系统和数据库管理系统指的是同一软件产品
    b、数据库系统和数据库管理系统指的是不同软件产品
    c、数据库管理系统是软件产品,而数据库系统不仅仅是软件产品
    d、数据库系统是软件产品,而数据库管理系统不仅仅是软件产品

2、关于数据库系统,下列说法正确的是__________。
    a、数据库系统的构成包括计算机/网络基本系统、数据库和数据库管理系统
    b、数据库系统的构成包括计算机/网络基本系统、数据库、数据库管理系统和数据库应用程序
    c、数据库系统的构成包括计算机/网络基本系统、数据库、数据库应用程序和数据库管理员
    d、数据库系统的构成包括数据库、数据库管理系统、数据库应用程序、数据库管理员以及计算机与网络基本系统

3、从用户角度看数据库管理系统的功能,下列说法正确的是__________。
    a、数据库管理系统就是通过数据库语言让用户操作进而提供数据库操纵功能的系统
    b、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义和数据库操纵功能的系统
    c、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义、数据库操纵和数据库控制功能的系统
    d、数据库管理系统就是通过数据库语言让用户操作进而提供数据库定义、数据库操纵和数据库控制功能的系统,同时提供了一系列程序能够实现对数据库的各种存储与维护

4、从用户角度看数据库管理系统,其功能包括__________
    a、数据库定义
    b、数据库操纵
    c、数据库控制
    d、数据库维护
    e、全部正确

5、从系统角度看数据库管理系统,其功能包括__________。
    a、数据库语言及其编译
    b、查询实现与查询优化
    c、事务处理
    d、不仅有数据库语言及其编译、查询实现与查询优化以及事务处理功能,还包括其他功能
    e、仅包括数据库语言及其编译、查询实现与查询优化以及事务处理功能

6、从系统角度看数据库管理系统,其功能包括__________。
    a、查询实现与查询优化
    b、事务处理
    c、数据存储与索引
    d、仅有查询实现与查询优化、事务处理、数据存储与索引功能
    e、不仅仅包含查询实现与查询优化、事务处理、数据存储与索引功能,还包括其他功能

7、下列哪些功能不是数据库管理系统的功能__________。
    a、完整性控制
    b、故障恢复
    c、并发控制
    d、通讯控制
    e、处理机控制

8、关于数据库系统语言,下列说法正确的是__________。
    a、数据库系统语言包括了ddl和dml
    b、数据库系统语言包括了ddl、dml和dcl
    c、数据库系统语言包括了ddl、dml和c /java
    d、数据库系统语言包括了ddl、dml和程序设计语言

9、关于ddl,下列说法正确的是__________。
    a、ddl是数据库定义语言
    b、ddl是数据库操纵语言
    c、ddl是数据库控制语言
    d、ddl是数据库维护语言

10、关于dml,下列说法正确的是__________。
    a、dml是数据库定义语言
    b、dml是数据库操纵语言
    c、dml是数据库控制语言
    d、dml是数据库维护语言

第2讲-数据库系统的结构抽象与演变

第2讲模拟练习题随堂测验

1、数据库系统的三级模式是指__________。
    a、用户模式、局部模式和全局模式
    b、外模式、概念模式和逻辑模式
    c、外模式、内模式和存储模式
    d、用户模式、概念模式和存储模式

2、在三级模式两层映像结构中,“模式”是指__________。
    a、外模式
    b、内模式
    c、存储模式
    d、概念模式

3、在三级模式两层映像结构中,“物理模式”是指__________。
    a、外模式
    b、全局模式
    c、用户模式
    d、存储模式

4、在三级模式两层映像结构中,“全局模式”是指__________。
    a、外模式
    b、用户模式
    c、内模式
    d、概念模式

5、在三级模式两层映像结构中,“局部模式”是指__________。
    a、概念模式
    b、内模式
    c、逻辑模式
    d、外模式

6、关于三级模式,下列说法不正确的是___ _______。
    a、概念模式又称为全局模式
    b、概念模式又称为逻辑模式
    c、内模式又称为存储模式
    d、内模式又称为局部模式

7、关于数据独立性,下列说法正确的为___ _______。
    a、外模式到概念模式的映像实现了数据的物理独立性
    b、外模式到内模式的映像实现了数据的物理独立性
    c、概念模式到内模式的映像实现了数据的物理独立性
    d、以上说法均不正确

8、关于数据独立性,下列说法正确的为___ _______。
    a、外模式到概念模式的映像实现了数据的逻辑独立性
    b、外模式到内模式的映像实现了数据的逻辑独立性
    c、概念模式到内模式的映像实现了数据的逻辑独立性
    d、以上说法均不正确

9、数据库系统的数据独立性是指_______________。
    a、不会因为数据的变化而影响应用程序
    b、不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
    c、不会因为存储策略的变化而影响存储结构
    d、不会因为某些存储结构的变化而影响其他的存储结构

10、下列说法不正确的是_______________。
    a、模式是对数据的抽象,数据的结构性描述称为模式
    b、数据模型是对模式的抽象,模式的结构性描述称为数据模型
    c、一个数据库是由一系列模式及其数据构成的
    d、模式是对数据模型的抽象,数据模型的结构性描述称为模式

11、第一代数据库系统是指_______________。
    a、文件系统
    b、基于xml模型的数据库系统
    c、基于关系模型的数据库系统
    d、基于网状模型或层次模型的数据库系统

12、第二代数据库系统是指_______________。
    a、基于文件的数据库系统;
    b、基于xml模型的数据库系统
    c、基于网状模型或层次模型的数据库系统
    d、基于关系模型的数据库系统

13、数据库系统与文件系统的主要差别在_______________。
    a、数据的组织是否依赖于具体的应用程序
    b、数据存取是否可以记录或记录的集合为单位进行操作
    c、不同文件之间以及不同记录之间是否有联系
    d、包括其他全部选项

14、关系数据库系统对层次/网状数据库系统的重大改进是_______________。
    a、消除了由用户建立指针的弊端
    b、将逐一记录的操作改进为支持记录集合的操作
    c、数据检索操作不依赖于路径信息或过程信息,即非过程化的操作
    d、包括其他全部选项

15、面向对象数据库系统对关系数据库系统的重大改进是_______________。
    a、允许复杂的数据类型存在
    b、突破了关系模型第一范式的限制
    c、既支持记录集合的操作,又支持面向对象的操作
    d、包括其他全部选项

第2讲测验

1、数据库系统的三级模式是指__________。
    a、用户模式、局部模式和全局模式
    b、外模式、概念模式和逻辑模式
    c、外模式、内模式和存储模式
    d、用户模式、概念模式和存储模式

2、在三级模式两层映像结构中,“模式”是指__________。
    a、外模式
    b、内模式
    c、存储模式
    d、概念模式

3、在三级模式两层映像结构中,“物理模式”是指__________。
    a、外模式
    b、全局模式
    c、用户模式
    d、存储模式

4、在三级模式两层映像结构中,“全局模式”是指__________。
    a、外模式
    b、用户模式
    c、内模式
    d、概念模式

5、在三级模式两层映像结构中,“局部模式”是指__________。
    a、概念模式
    b、内模式
    c、逻辑模式
    d、外模式

6、关于三级模式,下列说法不正确的是___ _______。
    a、概念模式又称为全局模式
    b、概念模式又称为逻辑模式
    c、内模式又称为存储模式
    d、内模式又称为局部模式

7、关于数据独立性,下列说法正确的为___ _______。
    a、外模式到概念模式的映像实现了数据的物理独立性
    b、外模式到内模式的映像实现了数据的物理独立性
    c、概念模式到内模式的映像实现了数据的物理独立性
    d、以上说法均不正确

8、关于数据独立性,下列说法正确的为___ _______。
    a、外模式到概念模式的映像实现了数据的逻辑独立性
    b、外模式到内模式的映像实现了数据的逻辑独立性
    c、概念模式到内模式的映像实现了数据的逻辑独立性
    d、以上说法均不正确

9、数据库系统的数据独立性是指_______________。
    a、不会因为数据的变化而影响应用程序
    b、不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
    c、不会因为存储策略的变化而影响存储结构
    d、不会因为某些存储结构的变化而影响其他的存储结构。

10、下列说法不正确的是_______________。
    a、模式是对数据的抽象,数据的结构性描述称为模式
    b、数据模型是对模式的抽象,模式的结构性描述称为数据模型
    c、一个数据库的数据模型是由一系列模式构成的
    d、一个数据库是由一系列模式及其数据构成的
    e、模式是对数据模型的抽象,数据模型的结构性描述称为模式

11、第一代数据库系统是指_______________。
    a、文件系统
    b、基于面向对象数据模型的数据库系统
    c、基于xml模型的数据库系统
    d、基于关系模型的数据库系统
    e、基于网状模型或层次模型的数据库系统

12、第二代数据库系统是指_______________。
    a、基于文件的数据库系统
    b、基于面向对象数据模型的数据库系统
    c、基于xml模型的数据库系统
    d、基于网状模型或层次模型的数据库系统
    e、基于关系模型的数据库系统

13、数据库系统与文件系统的主要差别在_______________。
    a、数据的组织是否依赖于具体的应用程序
    b、数据存取是否可以记录或记录的集合为单位进行操作
    c、数据控制是否可以统一进行控制
    d、不同文件之间以及不同记录之间是否有联系
    e、包括其他全部选项

14、关系数据库系统对层次/网状数据库系统的重大改进是_______________。
    a、消除了由用户建立指针的弊端
    b、将逐一记录的操作改进为支持记录集合的操作
    c、形成了较为完善的数据库理论
    d、数据检索操作不依赖于路径信息或过程信息,即非过程化的操作
    e、包括其他全部选项

15、面向对象数据库系统对关系数据库系统的重大改进是_______________。
    a、允许复杂的数据类型存在
    b、突破了关系模型第一范式的限制
    c、既支持记录集合的操作,又支持面向对象的操作
    d、包括其他全部选项

第3讲-关系模型之基本概念

第3讲模拟练习题随堂测验

1、某关系r的外键是指______
    a、其它关系的候选键,可以是r中的主属性或非主属性
    b、该关系除主键之外的另一个候选键
    c、其它关系的候选键,同时作为r的主属性
    d、其它关系的候选键,同时作为r的非主属性

2、关系模型中,下列关于候选键说法正确的是_______
    a、可由其值能惟一标识该关系中任何元组的一个或多个属性组成
    b、可由多个任意属性组成
    c、至多由其值能惟一标识该关系任何元组的一个属性组成
    d、其余都不是

3、若某属性非该关系的主键,却是另外一个关系的主键,则该属性称为_______
    a、外键
    b、主键
    c、候选键
    d、其余都不是

4、下列四项中说法正确的是_______
    a、关系的任何属性都是不可再分的
    b、r(a1 , a2 , … , an ),这种描述又被称为关系模式,其中ai 是指属性所对应的域
    c、关系模式和关系都是不随时间变化的
    d、同一关系模式下关系是唯一的

5、假设有关系r(a, b, c),其主码为a;关系s(d, a),其主码为d,外码为a。如下图示: r s a b c d a 1 2 3 1 2 2 1 3 2 null 3 3 4 1 则关系s中违反完整性规则的元组是________
    a、<3, 3>
    b、< 1, 2 >
    c、<2,null>
    d、<4, 1>

6、有关系r(a:int, b:int, c:int), 主码为a,没有违反完整性规则的选项是_______
    a、a b c 1 2 3 1 3 5
    b、a b c 1 2 3 null 1 3
    c、a b c 1 2 3 2 2.1 3
    d、a b c 1 2 3 2 1 null

7、已知三个域:男人={李基,张鹏},女人={王方,刘玉},子女={李键,张睿,张峰}。这一组域(男人,女人,子女)的笛卡尔积的基数为_______
    a、12
    b、9
    c、7
    d、27

8、现有如下关系:患者(患者编号,患者姓名,性别,出生日期),医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期)。其中,“医疗”关系中的外键是_______
    a、患者编号
    b、患者姓名
    c、患者编号和患者姓名
    d、医生编号

9、已知关系member(s#, name, d#)和team(d#, dname,leader), 其中member的s#为主键,d#为外键, 且s# 范围为1000000-1100000。team = {<’01’,’技术研发’,’赵六’>,<’02’,’产品运营’,’钱琪’>}。 问:下面哪一个选项中的元组可以是member的元组。_______
    a、<‘1000101’,null, ‘01’>
    b、<‘1000102’,‘张三’,‘05’>
    c、
    d、<‘1101010’,‘王五’,‘02’>

10、“合同”关系和“客户”关系如下表所示,关于这两个表说法正确的是________ 合同 合同号 合同名称 合同签订人 客户号 ht01 钢材合同 张三 cust01 ht02 煤矿合同 李四 cust02 ht03 钢材合同 张三 cust01 客户 客户号 客户名称 客户地址 联系人 cust01 首钢 北京 李吉 cust02 天麟煤矿 北京 李润 cust03 宝钢 上海 李婷
    a、“合同”关系和“客户”关系的主码分别为“合同号”和“客户号”,“合同”的外码为“客户号”
    b、“合同”关系和“客户”关系的主码都为“客户号”,“合同”的外码为“合同签订人”
    c、“合同”关系和“客户”关系的主码分别为“合同号”和“客户名称”,“合同”的外码为“合同签订人”
    d、“合同”关系和“客户”关系的主码分别为“合同名称”和“客户号”,“合同”的外码为“客户号”

11、关于关系模型完整性的说法,不正确的是______
    a、外键如果取空值,则违反了参照完整性
    b、数据库中有了空值会影响许多方面,如影响聚集函数运算的正确性等
    c、用户自定义完整性是指用户针对具体的数据库应用所定义的完整性约束条件
    d、实体完整性和参照完整性一般由dbms系统自动支持

12、关于学生关系,下列哪一个属性适合作为候选码_______
    a、学号
    b、年龄
    c、性别
    d、班级

13、关于关系模式与关系,说法不正确的是_______
    a、关系模式是稳定的;同一关系模式下,只有一种关系
    b、同一关系模式下,可有很多的关系
    c、关系模式是关系的结构, 关系是关系模式在某一时刻的数据
    d、关系模式是稳定的;而关系是某一时刻的值,是随时间可能变化的

14、关于关系的特性,说法不正确的是______
    a、关系是以属性在关系的位置来区分的
    b、关系是以内容(名字或值)来区分的
    c、区分哪一列是靠列名
    d、区分哪一行是靠某一或某几列的值

15、关于关系的特性,说法不正确的是______
    a、关系的任意两列上的值不能完全相同
    b、关系的任意两个元组不能完全相同
    c、元组相同是指两个元组的每个分量都相同
    d、在同一个关系中如存在相同的元组,则仅保留其中的一个

16、关系模型就是处理table的,它由哪些部分组成_________。
    a、关系(或者表)、关系运算和完整性约束
    b、关系(或者表)和关系运算
    c、关系(或者表)和完整性约束
    d、其他选项都不对

17、关系数据库中,体现“实体能够区分并唯一标识元组”的规则是________。
    a、实体完整性规则
    b、参照完整性规则
    c、用户自定义完整性规则
    d、属性的值域限定规则

18、根据关系模型的完整性规则,一个关系中的主键________。
    a、不允许空值
    b、可以有多个
    c、不能成为另一个关系的外键
    d、可以取空值

19、关系模型中,实体完整性是指_________。
    a、实体的主码中的属性值不能为空值
    b、实体不允许是空实体
    c、实体的外键值不允许是空值
    d、实体的属性值不能是空值

20、若规定工资表中的基本工资不得超过5000元,则这个规则属于________。
    a、用户定义完整性约束
    b、其他都不是
    c、实体完整性约束
    d、参照完整性约束

21、关于“关系”的说法,正确的是________。
    a、关系是一个由行与列组成的、能够表达数据及数据之间联系的二维表
    b、表中某一列的数据可以同时出现字符串与数值
    c、表中某一列的值可以取空值null,所谓空值就是空格
    d、表中只能有一列作为主关键字,用来唯一标识一行

22、下列几个表符合关系约束的是__________。
    a、students s# lname fname class telephone 1 jones allan 2 555-1234 2 smith john 3 555-4321 3 brown harry 2 555-1122 5 white edward 3 555-3344
    b、
    c、
    d、

23、关于关系的特性,说法不正确的是_________。
    a、表中行的顺序、列的顺序不可以任意交换
    b、表中的每一列均需有一个唯一的名字
    c、表中不允许出现完全相同的两列
    d、表中行的顺序、列的顺序均可以任意交换

24、关系模型中,实现不同关系之间的联系是通过________。
    a、外键
    b、关系
    c、表
    d、候选码

25、参照完整性规则是指表的__________必须是另一个表主键的有效值,或者是空值。
    a、外键
    b、候选键
    c、主键
    d、主属性

第3讲测验

1、某关系r的外键是指______。
    a、其它关系的候选键,可以是r中的主属性或非主属性
    b、该关系除主键之外的另一个候选键
    c、其它关系的候选键,同时作为r的主属性
    d、其它关系的候选键,同时作为r的非主属性

2、关系模型中,下列关于候选键说法正确的是_______
    a、可由其值能惟一标识该关系中任何元组的一个或多个属性组成
    b、可由多个任意属性组成
    c、至多由其值能惟一标识该关系任何元组的一个属性组成
    d、其余都不是。

3、若某属性非该关系的主键,却是另外一个关系的主键,则该属性称为_______
    a、外键
    b、主键
    c、候选键
    d、其余都不是

4、下列四项中说法正确的是_______
    a、关系的任何属性都是不可再分的
    b、r(a1 , a2 , … , an ),这种描述又被称为关系模式,其中ai 是指属性所对应的域
    c、关系模式和关系都是不随时间变化的
    d、同一关系模式下关系是唯一的

5、假设有关系r(a, b, c),其主码为a;关系s(d, a),其主码为d,外码为a。如下图示: r s a b c d a 1 2 3 1 2 2 1 3 2 null 3 3 4 1 则关系s中违反完整性规则的元组是________
    a、<3, 3>
    b、< 1, 2 >
    c、<2,null>
    d、<4, 1>

6、有关系r(a:int, b:int, c:int), 主码为a,没有违反完整性规则的选项是_______
    a、a b c 1 2 3 1 3 5
    b、a b c 1 2 3 null 1 3
    c、a b c 1 2 3 2 2.1 3
    d、a b c 1 2 3 2 1 null

7、已知三个域:男人={李基,张鹏},女人={王方,刘玉},子女={李键,张睿,张峰}。这一组域(男人,女人,子女)的笛卡尔积的基数为_______
    a、12
    b、9
    c、7
    d、27

8、现有如下关系:患者(患者编号,患者姓名,性别,出生日期),医疗(患者编号,患者姓名,医生编号,医生姓名,诊断日期)。其中,“医疗”关系中的外键是_______
    a、患者编号
    b、患者姓名
    c、患者编号和患者姓名
    d、医生编号

9、已知关系member(s#, name, d#)和team(d#, dname,leader), 其中member的s#为主键,d#为外键, 且s# 范围为1000000-1100000。team = {<’01’,’技术研发’,’赵六’>,<’02’,’产品运营’,’钱琪’>}。 问:下面哪一个选项中的元组可以是member的元组。_______
    a、<‘1000101’,null, ‘01’>
    b、<‘1000102’,‘张三’,‘05’>
    c、
    d、<‘1101010’,‘王五’,‘02’>

10、“合同”关系和“客户”关系如下表所示,关于这两个表说法正确的是________ 合同 合同号 合同名称 合同签订人 客户号 ht01 钢材合同 张三 cust01 ht02 煤矿合同 李四 cust02 ht03 钢材合同 张三 cust01 客户 客户号 客户名称 客户地址 联系人 cust01 首钢 北京 李吉 cust02 天麟煤矿 北京 李润 cust03 宝钢 上海 李婷
    a、“合同”关系和“客户”关系的主码分别为“合同号”和“客户号”,“合同”的外码为“客户号”
    b、“合同”关系和“客户”关系的主码都为“客户号”,“合同”的外码为“合同签订人”
    c、“合同”关系和“客户”关系的主码分别为“合同号”和“客户名称”,“合同”的外码为“合同签订人”
    d、“合同”关系和“客户”关系的主码分别为“合同名称”和“客户号”,“合同”的外码为“客户号”

11、关于关系模型完整性的说法,不正确的是______
    a、外键如果取空值,则违反了参照完整性
    b、数据库中有了空值会影响许多方面,如影响聚集函数运算的正确性等
    c、用户自定义完整性是指用户针对具体的数据库应用所定义的完整性约束条件
    d、实体完整性和参照完整性一般由dbms系统自动支持

12、关于学生关系,下列哪一个属性适合作为候选码_______
    a、学号
    b、年龄
    c、性别
    d、班级

13、关于关系模式与关系,说法不正确的是_______
    a、关系模式是稳定的;同一关系模式下,只有一种关系
    b、同一关系模式下,可有很多的关系
    c、关系模式是关系的结构, 关系是关系模式在某一时刻的数据
    d、关系模式是稳定的;而关系是某一时刻的值,是随时间可能变化的

14、关于关系的特性,说法不正确的是______
    a、关系是以属性在关系的位置来区分的
    b、关系是以内容(名字或值)来区分的
    c、区分哪一列是靠列名
    d、区分哪一行是靠某一或某几列的值

15、关于关系的特性,说法不正确的是______
    a、关系的任意两列的值不能完全相同
    b、关系的任意两个元组不能完全相同
    c、元组相同是指两个元组的每个分量都相同
    d、在同一个关系中如存在相同的元组,则仅保留其中的一个

16、关系模型就是处理table的,它由哪些部分组成_________。
    a、关系(或者表)、关系运算和完整性约束
    b、关系(或者表)和关系运算
    c、关系(或者表)和完整性约束
    d、其他选项都不对

17、关系数据库中,体现“实体能够区分并唯一标识元组”的规则是________。
    a、实体完整性规则
    b、参照完整性规则
    c、用户自定义完整性规则
    d、属性的值域限定规则

18、根据关系模型的完整性规则,一个关系中的主键________
    a、不允许空值
    b、可以有多个
    c、不能成为另一个关系的外键
    d、可以取空值

19、关系模型中,实体完整性是指_________
    a、体的主码中的属性值不能为空值
    b、实体不允许是空实体
    c、实体的外键值不允许是空值
    d、实体的属性值不能是空值

20、若规定工资表中的基本工资不得超过5000元,则这个规则属于________
    a、用户定义完整性约束
    b、其他都不是
    c、实体完整性约束
    d、参照完整性约束

21、关于“关系”的说法,正确的是________
    a、关系是一个由行与列组成的、能够表达数据及数据之间联系的二维表
    b、表中某一列的数据可以同时出现字符串与数值
    c、表中某一列的值可以取空值null,所谓空值就是空格
    d、表中只能有一列作为主关键字,用来唯一标识一行

22、下列几个表符合关系约束的是__________
    a、students s# lname fname class telephone 1 jones allan 2 555-1234 2 smith john 3 555-4321 3 brown harry 2 555-1122 5 white edward 3 555-3344
    b、
    c、
    d、

23、关于关系的特性,说法不正确的是_________
    a、表中行的顺序、列的顺序不可以任意交换
    b、表中的每一列均需有一个唯一的名字
    c、表中不允许出现完全相同的两列
    d、表中行的顺序、列的顺序均可以任意交换

24、关系模型中,实现不同关系之间的联系是通过________。
    a、外键
    b、关系
    c、表
    d、候选码

25、参照完整性规则是指表的__________必须是另一个表主键的有效值,或者是空值
    a、外键
    b、候选键
    c、主键
    d、主属性

第4讲 关系模型之关系代数

第4讲模拟练习题随堂测验

1、如下列表所示,两个关系r1和r2,它们进行______运算后可以得到r3。 关系r1 关系r2 关系r3 a b c b e m a b c e m 1 1 x 1 m i 1 1 x m i c 2 y 2 n j c 2 y n j d 3 y 1 m k 1 1 x m k
    a、r1⋈r2
    b、r1∩r2
    c、r1∪r2
    d、r1 ´ r2

2、在关系代数运算中,五种基本运算为______
    a、并、差、选择、投影、乘积
    b、并、差、选择、投影、自然连接
    c、并、差、交、选择、投影
    d、并、差、交、选择、乘积

3、自然连接是构成新关系的有效方法。一般情况下,当对关系r和s使用自然连接时,要求r和s含有一个或多个共有的_______
    a、属性
    b、元组
    c、行
    d、域

4、根据上述关系,求表r⋈w的结果_______
    a、
    b、
    c、
    d、没有正确答案

5、系如下图所示,查询既学习课程号为001课程又学习课程号为002号课程的学生的学号,正确的是_______
    a、
    b、
    c、
    d、

6、关系如下图所示。 的含义为_________
    a、查询没有学习过课程号为002号课程的学生姓名和年龄
    b、查询不仅仅学习课程号为002号课程的学生姓名和年龄
    c、查询学习课程号为002号课程的学生姓名和年龄
    d、其他全不对

7、关系r与关系s只有一个公共属性,t1是r与s做θ连接的结果,t2是r与s自然连接的结果,则下列说法正确的是_______
    a、t1的属性个数大于t2的属性个数
    b、t1 的属性个数等于t2
    c、t1的属性个数小于t2
    d、t1的属性个数大于或等于t2的属性个数

8、已知关系课程表c,用关系代数查询“程军”老师所授课程的课程号(c#)和课程名(cname),正确的是__________。 课程表c c# cname cteacher k1 c语言 王华 k5 数据库原理 程军 k8 编译原理 程军
    a、
    b、
    c、
    d、

9、学生表如图所示,用关系代数查询所有在3系就读的且年龄小于21的学生的学号和姓名。表达正确的是________。 r(学生表)
    a、
    b、
    c、
    d、

10、学生表如下图所示,用关系代数查询不在(年龄大于20的3系同学)要求之内的所有其他同学的信息,正确的是_________ r(学生表)
    a、
    b、
    c、
    d、

11、对于如下运算,结果正确的是_________。
    a、
    b、
    c、
    d、

12、已知关系s(s#,sname,sage,sclass), sc(s#,c#,score)。如下所示关系代数表达式的含义是________。
    a、其他全不对
    b、查询没有学习过课程号为002号课程的学生姓名和年龄
    c、查询不仅仅学习课程号为002号课程的学生姓名和年龄
    d、查询学习课程号为002号课程的学生姓名和年龄

13、现有关系数据库如下: 学生(学号,姓名,性别,专业),课程(课程号,课程名,学分),选课(学号,课程号,分数)。检索“‘数据库’课程不及格学生的学号、姓名和分数”。其正确的关系代数表达式是________。
    a、
    b、
    c、
    d、

14、已知关系:学生(学号,姓名,性别,年龄), 课程(课程号,课程名,学分),选课(课程号,学号,成绩)。表达“查询年龄未满20岁的学生姓名及年龄”的关系代数表达式是_______
    a、
    b、
    c、
    d、

15、已知关系:学生(学号,姓名,性别,年龄), 课程(课程号,课程名,学分),选课(课程号,学号,成绩)。表示“查询没有选修数据库课程的学生姓名”的关系代数操作是________。
    a、
    b、
    c、
    d、

16、已知关系:学生(学号,姓名,性别,年龄),课程(课程号,课程名,教师,学分),选课(学号,课程号,成绩)。表达查询“选修了教师01所教全部课程的学生的姓名”的关系代数操作是_________。
    a、
    b、
    c、
    d、

17、表达“从一个关系的所有行中提取出满足某些条件的行”,“从一个关系的所有列中提取出某些列”“提取出属于一个关系但不属于另一关系的所有元组”“将两个关系必须按照某种条件串接成一个较大的关系”的操作依次是__________。 1、并 2、交 3、积 4、选择 5、投影 6、差 7、连接
    a、4567
    b、4537
    c、3567
    d、4561

18、下列说法正确的是__________。
    a、r ´ s与 s ´ r运算的结果是同一个关系
    b、r∪s与 s∪r运算的结果不是同一个关系
    c、r - s与 s - r运算的结果是同一个关系
    d、其余说法都不对

19、设关系r、s、w各有10个元组,那么这三个关系的笛卡尔积的元组个数是_________。
    a、1000
    b、10
    c、30
    d、不确定

20、设关系r和s的元组个数分别为100和300,关系t是r与s的笛卡尔积,则t的元组个数是________。
    a、30000
    b、400
    c、10000
    d、90000

21、设关系r与关系s具有相同的目数(或称度数),且相对应属性的值取自同一个域,则r-(r-s)等于_________。
    a、r∩s
    b、r∪s
    c、s - r
    d、s

22、假定学生关系是s(s#,sname,ssex,sage),课程关系是c(c#,cname,cteacher),学生选课关系是sc(s#,c#,score), 要查找“选修‘computer’课程的女学生的姓名”,其正确的关系代数表达式是________。
    a、其他都不对
    b、
    c、
    d、

23、设关系r和s的属性个数分别为n和m,那么r×s操作结果的属性个数为________。
    a、n m
    b、n-m
    c、n×m
    d、max(n,m)

24、设f1,f2是条件表达式,σf1(σf2(r))等价于_______。
    a、σf1∧f2(r)
    b、σf1úf2(r)
    c、σf2(r)
    d、σf1(r)

第4讲测验

1、如下列表所示,两个关系r1和r2,它们进行______运算后可以得到r3。 关系r1 关系r2 关系r3 a b c b e m a b c e m 1 1 x 1 m i 1 1 x m i c 2 y 2 n j c 2 y n j d 3 y 1 m k 1 1 x m k
    a、r1⋈r2
    b、r1∩r2
    c、r1∪r2
    d、r1 ´ r2

2、在关系代数运算中,五种基本运算为______
    a、并、差、选择、投影、乘积
    b、并、差、选择、投影、自然连接
    c、并、差、交、选择、投影
    d、并、差、交、选择、乘积

3、自然连接是构成新关系的有效方法。一般情况下,当对关系r和s使用自然连接时,要求r和s含有一个或多个共有的_______
    a、属性
    b、元组
    c、行
    d、域

4、根据上述关系,求表r⋈w的结果_______
    a、
    b、
    c、
    d、没有正确答案

5、关系如下图所示,查询既学习课程号为001课程又学习课程号为002号课程的学生的学号,正确的是_______
    a、
    b、
    c、
    d、

6、关系如下图所示。 的含义为_________
    a、查询没有学习过课程号为002号课程的学生姓名和年龄
    b、查询不仅仅学习课程号为002号课程的学生姓名和年龄
    c、查询学习课程号为002号课程的学生姓名和年龄
    d、其他全不对

7、关系r与关系s只有一个公共属性,t1是r与s做θ连接的结果,t2是r与s自然连接的结果,则下列说法正确的是_______
    a、t1的属性个数大于t2的属性个数
    b、t1 的属性个数等于t2
    c、t1的属性个数小于t2
    d、t1的属性个数大于或等于t2的属性个数

8、已知关系课程表c,用关系代数查询“程军”老师所授课程的课程号(c#)和课程名(cname),正确的是__________。 程表c c# cname cteacher k1 c语言 王华 k5 数据库原理 程军 k8 编译原理 程军
    a、
    b、
    c、
    d、

9、学生表如图所示,用关系代数查询所有在3系就读的且年龄小于21的学生的学号和姓名。表达正确的是________。 r(学生表)
    a、
    b、
    c、
    d、

10、学生表如下图所示,用关系代数查询不在(年龄大于20的3系同学)要求之内的所有其他同学的信息,正确的是_________ r(学生表)
    a、
    b、
    c、
    d、

11、对于如下运算,结果正确的是_________。
    a、
    b、
    c、
    d、

12、已知关系s(s#,sname,sage,sclass), sc(s#,c#,score)。如下所示关系代数表达式的含义是________。
    a、其他全不对
    b、查询没有学习过课程号为002号课程的学生姓名和年龄
    c、查询不仅仅学习课程号为002号课程的学生姓名和年龄
    d、查询学习课程号为002号课程的学生姓名和年龄

13、现有关系数据库如下: 学生(学号,姓名,性别,专业),课程(课程号,课程名,学分),选课(学号,课程号,分数)。检索“‘数据库’课程不及格学生的学号、姓名和分数”。其正确的关系代数表达式是________。
    a、
    b、
    c、
    d、

14、已知关系:学生(学号,姓名,性别,年龄), 课程(课程号,课程名,学分),选课(课程号,学号,成绩)。表达“查询年龄未满20岁的学生姓名及年龄”的关系代数表达式是_______
    a、
    b、
    c、
    d、

15、已知关系:学生(学号,姓名,性别,年龄), 课程(课程号,课程名,学分),选课(课程号,学号,成绩)。表示“查询没有选修数据库课程的学生姓名”的关系代数操作是________。
    a、
    b、
    c、
    d、

16、已知关系:学生(学号,姓名,性别,年龄),课程(课程号,课程名,教师,学分),选课(学号,课程号,成绩)。表达查询“选修了教师01所教全部课程的学生的姓名”的关系代数操作是_________。
    a、
    b、
    c、
    d、

17、表达“从一个关系的所有行中提取出满足某些条件的行”,“从一个关系的所有列中提取出某些列”“提取出属于一个关系但不属于另一关系的所有元组”“将两个关系必须按照某种条件串接成一个较大的关系”的操作依次是__________ 1、并 2、交 3、积 4、选择 5、投影 6、差 7、连接
    a、4567
    b、4537
    c、3567
    d、4561

18、下列说法正确的是__________。
    a、r ´ s与 s ´ r运算的结果是同一个关系
    b、r∪s与 s∪r运算的结果不是同一个关系
    c、r - s与 s - r运算的结果是同一个关系
    d、其余说法都不对

19、设关系r、s、w各有10个元组,那么这三个关系的笛卡尔积的元组个数是_________。
    a、1000
    b、10
    c、30
    d、不确定

20、设关系r和s的元组个数分别为100和300,关系t是r与s的笛卡尔积,则t的元组个数是________。
    a、30000
    b、400
    c、10000
    d、90000

21、设关系r与关系s具有相同的目数(或称度数),且相对应属性的值取自同一个域,则r-(r-s)等于_________。
    a、r∩s
    b、r∪s
    c、s - r
    d、s

22、假定学生关系是s(s#,sname,ssex,sage),课程关系是c(c#,cname,cteacher),学生选课关系是sc(s#,c#,score), 要查找“选修‘computer’课程的女学生的姓名”,其正确的关系代数表达式是________。
    a、其他都不对
    b、
    c、
    d、

23、设关系r和s的属性个数分别为n和m,那么r×s操作结果的属性个数为________。
    a、n m
    b、n-m
    c、n×m
    d、max(n,m)

24、设f1,f2是条件表达式,σf1(σf2(r))等价于_______。
    a、σf1∧f2(r)
    b、σf1úf2(r)
    c、σf2(r)
    d、σf1(r)

第6讲 sql语言之概述

第6讲模拟练习题随堂测验

1、sql语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,create、drop、alter语句是实现哪种功能_________。
    a、数据定义
    b、数据查询
    c、数据操纵
    d、数据控制

2、已知有: 学生表student(s# char(8), sname char(10), ssex char(2), sage integer, d# char(2), sclass char(6))中,若要在学生表中追加一个元组“学号为98030101的男同学张三,年龄为20,所属系别03,所在班级980301”,则可用_________。
    a、insert into student values(‘98030101’,‘张三’,‘男’, 20,‘03’,‘980301’);
    b、add into student values(‘98030101’,‘张三’,‘男’,20,‘03’,‘980301’);
    c、insert into student values (9803010, 张三, 男, 20, 03, 980301);
    d、add into student values(98030101, 张三, 男, 20,03,980301);

3、有学生表student(s# char(8), sname char(10), ssex char(2), sage integer, d# char(2), sclass char(6))。要检索学生表中“所有年龄小于等于19岁的学生的年龄及姓名”,sql语句正确的是_________。
    a、select sage, sname from student where sage <= 19;
    b、select sname from student where sage <= 19;
    c、select * from student where sage <= 19;
    d、select sage, sname from student;

4、若用如下的sql语句创建一个表sc: create table sc (s# char(6) not null,c# char(3) not null,score integer, note char(20)); 向sc表中插入如下行时,_________行可以被插入。
    a、(‘200823’,‘101’,null,null)
    b、(‘201009’,‘101’,null,必修)
    c、(null,‘103’,80,‘选修’)
    d、(‘201132’,null,86,‘’)

5、有学生表student(s# char(8), sname char(10), ssex char(2),sage integer, d# char(2), sclass char(6))。若要“检索名字为张某某的所有同学姓名”,sql语句正确的是_________。
    a、select sname from student where sname like ‘张____’;
    b、select sname from student where sname like ‘张%’;
    c、select sname from student where sname like ‘张_’;
    d、select sname from student where sname not like ‘张_ _’;

6、在关系模型中关于结果唯一性问题,结果排序问题,模糊查询问题,如下说法不正确的是_________。
    a、结果排序是在select语句中通过增加order by子句实现的,后只能跟desc或省略为降序。
    b、在table中要求无重复元组是通过定义primary key或unique来保证的;而在检索结果中要求无重复元组, 是通过在select子句中引入distinct保留字来实现的。
    c、模糊查询是通过在select语句的where子句中引入运算符like来实现的
    d、在select语句的like条件中,用“\%”去匹配字符%,用\_ 去匹配字符_

7、有关系表sc ( s# , c#, score),求既学过“001”号课又学过 “002”号课的所有学生的学号,下列sql语句正确的是_________。
    a、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002 ;
    b、select s# from sc where c# = ‘001’ and c#=‘002’;
    c、select s2.s# from sc s1, sc s2 where s1.s# = s2.s# or s1.c#=‘001’ and s2.c#=‘002 ;
    d、select s1.s# from sc s1 where s1. c# = ‘001’ and s1.c#=‘002’;

8、有关系表sc(s# , c#, score),求“001”号课成绩比“002”号课成绩高的所有学生的学号。下列sql语句正确的是_________。
    a、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s1.score > s2.score;
    b、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s2.score > s1.score;
    c、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002 ;
    d、select * from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s1.score > s2.score;

9、假设学生关系s(s#,sname,sex),课程关系c(c#,cname),学生选课关系sc(s#,c#,grade)。要查询选修“computer”课的男生姓名,将涉及到关系_________。
    a、s,c,sc
    b、s
    c、s,sc
    d、sc

10、sql语言中,删除一个表的命令是________。
    a、drop
    b、delete
    c、clear
    d、remove

11、学生关系s(s#,sname,ssex,sage,d#,sclass),s的属性分别表示学生的学号、姓名、性别、年龄。要在表s中删除一个属性“年龄”,可选用的sql语句是_________。
    a、alter table s drop sage
    b、delete sage from
    c、update s sage
    d、alter table s ‘sage’

12、若要撤销数据库中已经存在的表s,可用_________。
    a、drop table s
    b、delete table s
    c、delete s
    d、drop s

13、where条件中出现 like '_a%',下面哪一个结果是可以被检索出来的_________。
    a、bai
    b、aili
    c、cca
    d、以上所有都可以被检索出来

14、查询时,若要输出无重复的记录,select子句中使用的保留字是:_________。
    a、distinct
    b、all
    c、top n
    d、top n percent

15、查询结果输出时要求按“总评成绩”降序排列,相同者按“性别”升序,正确的子句是_________。
    a、order by 总评成绩 desc,性别
    b、order by 总评成绩,性别 desc
    c、order by 总评成绩 desc,性别 desc
    d、order by 总评成绩 asc,性别 desc

16、在下列sql语句中,属于数据控制语言dcl的是_________。 1、create 2、select 3、update 4、grant 5、delete 6、alter 7、insert 8、revoke
    a、4,8
    b、1,5,6,7
    c、2,3,6,8
    d、1,5,7

17、已知关系s(s#,sn,age,sex),sc(c#,s#,grade),c(c#,cn,teacher)。若要检索学生姓名及其选修课程的课程号和成绩,正确的select语句是_________。
    a、select s.sn,sc.c#,sc.grade from s,sc where s.s#=sc.s#
    b、select s.sn,sc.c#,sc.grade from s where s.s#=sc.s#
    c、select s.sn,sc.c#,sc.grade from sc where s.s#=sc.grade
    d、select s.sn,sc.c#,sc.grade from s.sc

18、insert into goods(name,storage,price) values (’keyboard’,3000,90.00)的作用是________。
    a、添加数据到一行中的部分列
    b、添加数据到一行中的所有列
    c、插入默认值
    d、插入多个行

19、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句: select sname from student, sc, course where student.s#=sc.s# and course.c#=sc.c# and t#= ‘t01’ and score<60; 关于其查询结果,下列说法正确的是_____ 。
    a、学习t01号教师讲授课程不及格的所有学生的姓名
    b、学习t01号教师讲授课程及格的所有学生的姓名
    c、学习非t01号教师讲授课程不及格的所有学生的姓名
    d、课程不及格的所有学生的姓名

20、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 将“选课”表中的1002号课的所有成绩提高10分,正确的sql语句是_____。
    a、update 选课 set 成绩=成绩 10 where 课号=‘1002’;
    b、update 选课 set 成绩=成绩 10 where 课号=1002;
    c、set 选课 update 成绩=成绩 10 where 课号=‘1002’;
    d、update 选课 set 成绩 10 where 课号=‘1002’;

21、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 从“课程”表中将2003号课去掉,正确的sql语句是_____。
    a、delete from 课程 where 课号=‘2003’;
    b、delete from 课程 where 课号=2003;
    c、delete from 课程 where ‘2003’;
    d、delete from 课程.课号=‘2003’;

22、如下几个表所示学生、课程、必修课和选课关系。 已知sql语句“select distinct 课号 from 必修课;”,其正确的检索结果是_____。
    a、
    b、
    c、
    d、其它选项都不正确

23、如下几个表所示学生、课程、必修课和选课关系。 已知sql语句是“select distinct 学号 from 选课 where 课号=‘1002’ or 课号=‘2002’;正确的结果是_____。
    a、
    b、
    c、
    d、

24、在select语句中,与关系代数中s运算符对应的是________子句。
    a、where
    b、select
    c、from
    d、group by

25、在select语句中,与关系代数中p运算符对应的是________子句。
    a、select
    b、from
    c、where
    d、group by

26、已知sc(s#, c#, score)关系的元组,如下所示{,,, , , , , , , }。关于“select s# from sc where c#=‘c1’ and c# = ‘c3’”,下列说法正确的是___ _____。
    a、其它说法都不正确
    b、该查询结果中的元组为{ s1, s5 };
    c、该查询结果中的元组为{ s1, s2, s3, s5 };
    d、该查询结果中的元组为{ s1 };

第6讲测验

1、sql语言集数据查询、数据操纵、数据定义和数据控制功能于一体,其中,create、drop、alter语句是实现哪种功能_________。
    a、数据定义
    b、数据查询
    c、数据操纵
    d、数据控制

2、已知有: 学生表student(s# char(8), sname char(10), ssex char(2), sage integer, d# char(2), sclass char(6))中,若要在学生表中追加一个元组“学号为98030101的男同学张三,年龄为20,所属系别03,所在班级980301”,则可用_________。
    a、insert into student values(‘98030101’,‘张三’,‘男’, 20,‘03’,‘980301’);
    b、add into student values(‘98030101’,‘张三’,‘男’,20,‘03’,‘980301’);
    c、insert into student values (9803010, 张三, 男, 20, 03, 980301);
    d、add into student values(98030101, 张三, 男, 20,03,980301);

3、有学生表student(s# char(8), sname char(10), ssex char(2), sage integer, d# char(2), sclass char(6))。要检索学生表中“所有年龄小于等于19岁的学生的年龄及姓名”,sql语句正确的是_________。
    a、select sage, sname from student where sage <= 19;
    b、select sname from student where sage <= 19;
    c、select * from student where sage <= 19;
    d、select sage, sname from student;

4、若用如下的sql语句创建一个表sc: create table sc (s# char(6) not null,c# char(3) not null,score integer, note char(20)); 向sc表中插入如下行时,_________行可以被插入。
    a、(‘200823’,‘101’,null,null)
    b、(‘201009’,‘101’,null,必修)
    c、(null,‘103’,80,‘选修’)
    d、(‘201132’,null,86,‘’)

5、有学生表student(s# char(8), sname char(10), ssex char(2),sage integer, d# char(2), sclass char(6))。若要“检索名字为张某某的所有同学姓名”,sql语句正确的是_________。
    a、select sname from student where sname like ‘张____’;
    b、select sname from student where sname like ‘张%’;
    c、select sname from student where sname like ‘张_’;
    d、select sname from student where sname not like ‘张_ _’;

6、在关系模型中关于结果唯一性问题,结果排序问题,模糊查询问题,如下说法不正确的是_________。
    a、结果排序是在select语句中通过增加order by子句实现的,后只能跟desc或省略为降序。
    b、在table中要求无重复元组是通过定义primary key或unique来保证的;而在检索结果中要求无重复元组, 是通过在select子句中引入distinct保留字来实现的。
    c、模糊查询是通过在select语句的where子句中引入运算符like来实现的
    d、在select语句的like条件中,用“\%”去匹配字符%,用\_ 去匹配字符_

7、有关系表sc ( s# , c#, score),求既学过“001”号课又学过 “002”号课的所有学生的学号,下列sql语句正确的是_________。
    a、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002 ;
    b、select s# from sc where c# = ‘001’ and c#=‘002’;
    c、select s2.s# from sc s1, sc s2 where s1.s# = s2.s# or s1.c#=‘001’ and s2.c#=‘002 ;
    d、select s1.s# from sc s1 where s1. c# = ‘001’ and s1.c#=‘002’;

8、有关系表sc(s# , c#, score),求“001”号课成绩比“002”号课成绩高的所有学生的学号。下列sql语句正确的是_________。
    a、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s1.score > s2.score;
    b、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s2.score > s1.score;
    c、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002 ;
    d、select * from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘001’ and s2.c#=‘002’ and s1.score > s2.score;

9、假设学生关系s(s#,sname,sex),课程关系c(c#,cname),学生选课关系sc(s#,c#,grade)。要查询选修“computer”课的男生姓名,将涉及到关系_________。
    a、s,c,sc
    b、s
    c、s,sc
    d、sc

10、sql语言中,删除一个表的命令是________。
    a、drop
    b、delete
    c、clear
    d、remove

11、学生关系s(s#,sname,ssex,sage,d#,sclass),s的属性分别表示学生的学号、姓名、性别、年龄。要在表s中删除一个属性“年龄”,可选用的sql语句是_________。
    a、alter table s drop sage
    b、delete sage from
    c、update s sage
    d、alter table s ‘sage’

12、若要撤销数据库中已经存在的表s,可用_________。
    a、drop table s
    b、delete table s
    c、delete s
    d、drop s

13、where条件中出现 like '_a%',下面哪一个结果是可以被检索出来的_________。
    a、bai
    b、aili
    c、bba
    d、cca
    e、以上所有都可以被检索出来

14、查询时,若要输出无重复的记录,select子句中使用的保留字是:_________。
    a、distinct
    b、all
    c、top n
    d、top n percent

15、查询结果输出时要求按“总评成绩”降序排列,相同者按“性别”升序,正确的子句是_________。
    a、order by 总评成绩 desc,性别
    b、order by 总评成绩,性别 desc
    c、order by 总评成绩 desc,性别 desc
    d、order by 总评成绩 asc,性别 desc

16、在下列sql语句中,属于数据控制语言dcl的是_________。 1、create 2、select 3、update 4、grant 5、delete 6、alter 7、insert 8、revoke
    a、4,8
    b、1,5,6,7
    c、2,3,6,8
    d、1,5,7

17、已知关系s(s#,sn,age,sex),sc(c#,s#,grade),c(c#,cn,teacher)。若要检索学生姓名及其选修课程的课程号和成绩,正确的select语句是_________。
    a、select s.sn,sc.c#,sc.grade from s,sc where s.s#=sc.s#
    b、select s.sn,sc.c#,sc.grade from s where s.s#=sc.s#
    c、select s.sn,sc.c#,sc.grade from sc where s.s#=sc.grade
    d、select s.sn,sc.c#,sc.grade from s.sc

18、insert into goods(name,storage,price) values (’keyboard’,3000,90.00)的作用是________。
    a、添加数据到一行中的部分列
    b、添加数据到一行中的所有列
    c、插入默认值
    d、插入多个行

19、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句: select sname from student, sc, course where student.s#=sc.s# and course.c#=sc.c# and t#= ‘t01’and score<60; 关于其查询结果,下列说法正确的是_____ 。
    a、学习t01号教师讲授课程不及格的所有学生的姓名
    b、学习t01号教师讲授课程及格的所有学生的姓名
    c、学习非t01号教师讲授课程不及格的所有学生的姓名
    d、课程不及格的所有学生的姓名
    e、其它选项的说法都不正确

20、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 将“选课”表中的1002号课的所有成绩提高10分,正确的sql语句是_____。
    a、update 选课 set 成绩=成绩 10 where 课号=‘1002’;
    b、update 选课 set 成绩=成绩 10 where 课号=1002;
    c、set 选课 update 成绩=成绩 10 where 课号=‘1002’;
    d、update 选课 set 成绩 10 where 课号=‘1002’;

21、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 从“课程”表中将2003号课去掉,正确的sql语句是_____。
    a、delete from 课程 where 课号=‘2003’;
    b、delete from 课程 where 课号=2003;
    c、delete from 课程 where ‘2003’;
    d、delete from 课程.课号=‘2003’;

22、如下几个表所示学生、课程、必修课和选课关系。 已知sql语句“select distinct 课号 from 必修课;”,其正确的检索结果是_____。
    a、
    b、
    c、
    d、其它选项都不正确

23、如下几个表所示学生、课程、必修课和选课关系。 已知sql语句是“select distinct 学号 from 选课 where 课号=‘1002’ or 课号=‘2002’;正确的结果是_____。
    a、
    b、
    c、
    d、

24、在select语句中,与关系代数中s运算符对应的是________子句。
    a、where
    b、select
    c、from
    d、group by

25、在select语句中,与关系代数中p运算符对应的是________子句。
    a、select
    b、from
    c、where
    d、group by

26、已知sc(s#, c#, score)关系的元组,如下所示{,,, , , , , , , }。关于“select s# from sc where c#=‘c1’ and c# = ‘c3’”,下列说法正确的是___ _____。
    a、其它说法都不正确;
    b、该查询结果中的元组为{ s1, s5 };
    c、该查询结果中的元组为{ s1, s2, s3, s5 };
    d、该查询结果中的元组为{ s1 };
    e、该查询结果中的元组为{ s5 };

第7讲 sql语言之复杂查询与视图

第7讲模拟练习题随堂测验

1、已知s(s#,sn,age,sex),s#学号,sn姓名。若要检索所有比'王华'年龄大的学生姓名、年龄和性别,正确的select语句是_________。
    a、select sn, age, sex from s where age>(select age from s where sn='王华')
    b、select sn,age,sex from s where sn='王华'
    c、select sn,age,sex from s where age>(select age where sn='王华')
    d、select sn,age,sex from s where age > 王华.age

2、在sql语言中,子查询是_________。
    a、嵌入到另一个查询语句之中的查询语句
    b、返回单表中数据子集的查询语言
    c、返回单表中数据子集的查询语言
    d、选取单表中字段子集的查询语句

3、设关系teacher的结构为:teacher(t# char(3), tname char(10), d# char(2), salary float(2)),其中t#教师编号,tname教师姓名,d#系号,salary工资。dept(d# char(2),dname char(10),dean char(10)),dname系名,dean系主任。若要将所有计算机系的教师工资上调10%,则可用_________。
    a、update teacher set salary = salary * 1.1 where d# in ( select d# from dept where dname=‘计算机’);
    b、update salary = salary * 1.1 where d# in ( select d# from dept where dname =‘计算机’);
    c、update salary = salary * 1.1 where d# in (select d# from dept where dname = 计算机);
    d、update table teacher set salary = salary * 1.1 where d# in ( select d# from dept where dname = ‘计算机’);

4、已知titles(title_id char(4), title char(20), pub_id char(4), price integer),其中title_id图书编号,title图书名,pub_id出版商编号,price价格。列出titles表中其价格高于出版商id为0736的出版商出版的书的最大价格的书的标题和id,合适的查询语句是_________。
    a、select title_id,title from titles where price>all(select price from titles where pub_id=‘0736’)
    b、select title_id,title from titles where price>all(select price from titles) and pub_id=‘0736’
    c、select title_id,title from titles where price>any(select price from titles where pub_id=‘0736’)
    d、select title_id,title from titles where price>any(select price from titles) and pub_id=‘0736’

5、陈述a:subquery1 union subquery2语句,其中subquery1和subquery2查询中相应的列必须以同一顺序出现。 陈述b:group by和having子句不能在子查询中使用,这些子句只能用在最后一个查询结束时来总结和排序最后结果集。 关于陈述a和b,下列说法正确的是_________。
    a、陈述a正确,陈述b错误
    b、都是正确的
    c、都是错误的
    d、陈述a错误,陈述b正确

6、下面有关having子句,说法不正确的是_________。
    a、使用having子句的同时不能使用where子句
    b、having子句必须与group by 子句同时使用,不能单独使用
    c、使用having子句的同时可以使用where子句
    d、使用having子句的作用是过滤掉不满足条件的分组

7、在sql中,与"not in"等价的操作符是_________。
    a、<> all
    b、= some
    c、<> some
    d、= all

8、以下定义的4个视图中,能够进行更新操作的是_________。
    a、create view s_male(学号,姓名) as select 学号,姓名 from student where 班号='09031'
    b、create view s_g(学号,姓名,课程名,分数) as select s.学号,姓名,课程名,分数 from student s,score sc,course c where s.学号=sc. 学号and sc. 课程号 = c. 课程号
    c、create view s_avg(学号,平均分) as select 学号,avg(分数) from score where 分数is not null group by 学号
    d、create view s_female(姓名,出生日期) as select 姓名,出生日期 from student where 性别='女'

9、已知选课关系sc(s# char(8), c# char(8), grade integer),s#学号,c#课程号,grade成绩。检索选修4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的select语句是_________。
    a、select s#,sum(grade) as sgrade from sc where grade>=60 group by s# having count(*)>=4 order by sgrade desc
    b、select s#,sum(grade) as sgrade from sc where grade>=60 group by s# having count(*)>=4 order by sgrade
    c、select s#,sum(grade) as sgrade from sc where grade>=60 having count(*)>=4 group by s# order by sgrade desc
    d、select s#,sum(grade) as sgrade from sc where grade>=60 and count(*)>=4 group by s# order by sgrade desc

10、已知选课关系sc(s# char(8), c# char(8), grade integer),s#学号,c#课程号,grade成绩。检索选修课程'c2'的学生中成绩最高的学生的学号。正确的select语句是_________。
    a、select s# from sc where c#='c2' and grade >= all(select grade from sc where c#='c2')
    b、select s# from sc where c#='c2' and grade >=(select grade from sc where c#='c2')
    c、select s# from sc where c#='c2' and grade in (select grade from sc where c#='c2')
    d、select s# from sc where c#='c2' and grade not in(select grade from sc where c#='c2')

11、关于sql视图更新的可执行性,下列说法不正确的是_________。
    a、对于由单一table子集构成的视图,即如果视图是从单个基本表使用选择、投影操作导出的,并且包含了基本表的主键,则不能更新
    b、如果视图的select目标列包含聚集函数,则不能更新
    c、如果视图中包括了group by子句,则不能更新
    d、如果视图是由单个表的列构成,但并没有包括主键,则不能更新

12、已知关系模式student (s# char(8) primary key, sname char(10), ssex char(2),sage integer, d# char(2), sclass char(6)),在此基础上定义了视图create view cstud(s#, sname, sclass) as ( select s#, sname, sclass from student where d# =‘03’)。若要对该视图进行更新,下列语句正确的是_________。
    a、insert into cstud values ( “98030104”, “张三丰”, “980301” );
    b、insert into cstud values (98030104, “张三丰”, “980301”);
    c、insert into cstud values (“98030104”, 张三丰, null, null, “03” , “980301”);
    d、insert into cstud values (null, “张三丰”, “980301”);

13、合并多个查询结果集,应使用_________保留字。
    a、union
    b、join
    c、into
    d、and

14、假如有两个表的连接是这样的:table_1 inner join table_2,其中table_1和table_2是两个具有公共属性的表,这种连接会生成哪种结果集_________。
    a、只包括table_1和table_2中满足条件的行的组合结果
    b、包括table_1中的所有行但不包括table_2的不匹配行的所有组合结果
    c、包括table_2中的所有行但不包括table_1的不匹配行的所有组合结果
    d、包括两个表的所有行的组合结果

15、有关sql语言的空值处理,以下说法不正确的是_________。
    a、除is [not] null之外,空值满足任何查找条件
    b、如果null参与比较运算,有些情况下是可以判断为真的或为假的。
    c、如果null参与聚集运算,则除count(*)之外其它聚集函数都忽略null
    d、如果null参与算术运算,则该算术表达式的值为null

16、求既学过002号课,又学过003号课的同学学号,下列sql语句不正确的是_________。
    a、select s# from sc where c# = ‘002’ and c#=‘003’;
    b、select s# from sc where c# = ‘002’ intersect select s# from sc where c# = ‘003’;
    c、select s# from sc where c# = ‘002’ and s# in (select s# from sc where c# =‘003’);
    d、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘002’ and s2.c#=‘003 ;

17、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句: select sname from student where s# not in (select s# from sc where student.s#=sc.s# and c#= ‘c01’ and score>=60); 关于其查询结果,下列说法正确的是_____。
    a、剔出掉c01号课程及格学生的其他学生的姓名
    b、c01号课程及格的所有学生的姓名
    c、c01号课程不及格的所有学生的姓名
    d、剔出掉c01号课程不及格学生的其他学生的姓名

18、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# in (select s# from sc where student.s#=sc.s# and c#= ‘c01’ and score>=60); 关于其查询结果,下列说法正确的是_____。
    a、c01号课程及格的所有学生的姓名
    b、c01号课程不及格的所有学生的姓名
    c、剔出掉c01号课程不及格学生的其他学生的姓名
    d、剔出掉c01号课程及格学生的其他学生的姓名

19、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# not in ( select s# from sc, course where t# = ‘03’ and sc.c# = c.c#); 关于其查询结果,下列说法正确的是_____。
    a、没学过03号教师讲授过的任一门课的学生的姓名
    b、学过03号教师讲授过的某一门课的学生的姓名
    c、学过03号教师讲授过的所有门课的学生的姓名
    d、没学全03号教师讲授过的所有门课的学生的姓名

20、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc where score<60 group by c# having count(*)>2; 关于其查询结果,下列说法正确的是_____。
    a、有2人以上不及格课程的同学的学号
    b、有2门以上不及格课程的同学的学号
    c、有2门以上及格课程的同学的学号
    d、有2人以上及格课程的同学的学号

21、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc where score<60 and count(*)>2 group by s#; 关于其查询结果,下列说法正确的是_____。
    a、其它选项的说法都不正确
    b、有2门以上不及格课程的同学的学号
    c、有2门以上及格课程的同学的学号
    d、有2人以上不及格课程的同学的学号

22、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# not in ( select s# from sc, course c, teacher t where t.tname = ‘李明’ and sc.c# = c.c# and t.t# = c.t# ); 关于其查询结果,下列说法正确的是_____。
    a、列出没学过李明老师讲授任一课程的学生姓名
    b、列出学全了李明老师讲授所有课程的学生姓名
    c、列出学过李明老师讲授某一课程的学生姓名
    d、列出没学全李明老师讲授所有课程的学生姓名

23、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc sc1 where sc1.c# = ‘c01’ and s# in (select s# from sc sc2 where sc2.c# = ‘c02’ and sc1.s#=sc2.s# and sc1.score>sc2.score); 关于其查询结果,下列说法正确的是_____。
    a、c01课程比c02课程成绩高的所有学生的学号
    b、c01同学比c02同学成绩高的所有课程的课号
    c、比c02课程成绩高的所有学生的学号
    d、其它选项的说法都不正确

24、现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数),用sql语言实现题目:检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业,正确的sql语句是_____。
    a、select 学号,姓名,专业 from 学生 where 学号 not in (select 学号 from 选课 where 分数<80)
    b、select 学号,姓名,专业 from 学生,选课 where 学号 not in (select 学号 from 选课 where 分数<80)
    c、select 学号,姓名,专业 from 学生,选课 where 学号 in (select 学号 from 选课 where 分数<80)
    d、select 学号,姓名,专业 from 学生 where 学号 in (select 学号 from 选课 where 学生.学号=选课.学号 and分数<80)

25、现有关系数据库如下: 学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数), 用sql语言实现题目:对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元,正确的sql语句是_____。
    a、update 学生 set 奖学金=1000 where 奖学金<=0 and 学号 in (select 学号 from 选课 where 分数=100)
    b、update 学生 set 奖学金=1000 where 奖学金≤0 and 学号 in (select 学号 from 选课 where 分数=100)
    c、update 学生 set 奖学金=’1000’where 奖学金<=0 and 学号 in (select 学号 from 选课 where 分数=100)
    d、update 学生 set 奖学金=1000 where 奖学金<=0 and 学号 not in (select 学号 from 选课 where 分数=100)

26、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 求既学过“1001”号课,又学过“2002”号课的所有学生的学号。正确的sql语句是_____。
    a、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 in (select distinct 学号 from 选课 where 课号=‘2002’ );
    b、select distinct 学号 from 选课 where 课号=‘1001’ and 课号=‘2002’;
    c、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 in ( from 选课 where 课号=‘2002’ );
    d、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 (select distinct 学号 from 选课 where 课号=‘2002’ )

27、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 列出各门课的平均成绩、最高成绩、最低成绩和选课人数。正确的sql语句是_____。
    a、select 课号,avg(成绩),max(成绩),min(成绩),count(学号)  from 选课 group by 课号;
    b、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 order by 课号;
    c、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 where 课号;
    d、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 having 课号;

28、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 列出最少选修了三门课程的学生姓名。正确的sql语句是_____。
    a、select 姓名 from 学生 where 学号 in  (select 学号 from 选课 group by 学号 having count(*) >= 3);
    b、select 姓名 from 学生 where 学号 in (select 学号 from 选课 group by 学号 count(*) >= 3);
    c、select 姓名 from 学生 where 学号 (select 学号 from 选课 group by 学号 having count(*) >= 3);
    d、select 姓名 from 学生 where 学号 in (select 学号 from 选课 order by 学号 having count(*) >= 3);

29、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询秋季学期有一门以上课程获90分以上成绩的学生名。正确的sql语句是_____。
    a、select 姓名 from 学生 where 学号 in (select 学号 from  选课 where 成绩 >= 90.0 and 课程号 in (select 课程号  from 课程 where 开课学期=‘秋’));
    b、select 姓名 from 学生 课程 选课 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and 成绩 >= 90.0 and 开课学期=’秋’;
    c、select 姓名 from 学生 where 学号 in  (学号 from 选课 where 成绩 >= 90.0 and 课程号 in (select 课程号 from 课程 where 开课学期=‘秋’));
    d、select 姓名 from 学生 where 学号 in (select 学号 from 选课 where 成绩 >= 90.0 and 课程号 in (课程号 from 课程 where 开课学期=‘秋’));

30、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 试列出计算机系所开课程(cs标志)的最高成绩、最低成绩和平均成绩。如果某门课程的成绩不全(即“成绩”中有null出现),则该课程不予统计,结果按“课程号”升序排列。正确的sql语句是_____。
    a、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    b、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    c、select max(成绩),min(成绩),avg(成绩) from 选课 where 课程号= ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    d、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null)

31、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0, 则下列说法正确的是____ ____。
    a、该元组在“子查询1 except 子查询2”中出现0次;
    b、该元组在“子查询1 union 子查询2”中出现m n次;
    c、该元组在 “子查询1 except all 子查询2”中出现m – n次;
    d、该元组在“子查询1 intersect 子查询2”中出现min(m,n)次;

32、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
    a、该元组在“子查询1 union all 子查询2”中出现m n次;
    b、该元组在 “子查询1 union 子查询2”中出现m n次;
    c、该元组在“子查询1 union all 子查询2”中出现1次;
    d、该元组在 “子查询1 union 子查询2”中出现min(m,n)次;

33、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
    a、该元组在“子查询1 except 子查询2”中出现0次;
    b、该元组在“子查询1 union 子查询2”中出现m n次;
    c、该元组在 “子查询1 except all 子查询2”中出现m – n次;
    d、该元组在“子查询1 union all 子查询2”中出现max(m,n)次;

34、在下列关于视图的叙述中,正确的是_______。
    a、当某一视图删除后,由该视图导出的其它视图也将自动删除;
    b、若导出某视图的基本表被删除,该视图将不受任何影响;
    c、视图—旦建立,就不能被删除;
    d、当修改某一视图时,导出该视图的基本表也随之修改。

35、sql语言中的视图是一种_________。
    a、子模式及子模式到模式的映像;
    b、全局模式及全局模式到子模式的映像;
    c、内模式及内模式到模式的映像;
    d、模式及模式到概念模式的映像;

36、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询缺成绩的学生名及课程号。正确的sql语句是_____。
    a、select 姓名,课程号 from 学生,选课 where 学生.学号=选课.学号 and 成绩 is null;
    b、select 姓名,课程号 from 学生,选课 where 学生.学号=选课.学号 and 成绩=‘ ’;
    c、select 姓名,课程号 from 学生,选课 where 成绩 is null;
    d、select 姓名,课程号 from 学生,选课 where 成绩=‘ ’;

37、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 统计学生的平均身高。正确的sql语句是_____ 。
    a、select avg(身高) from 学生;
    b、select count(身高) from 学生;
    c、select 身高,avg(身高) from 学生;
    d、select aver(身高) from 学生;

38、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询选修cs-110课程的学生名。正确的sql语句是_____。
    a、select 姓名 from 学生,选课 where 学生.学号=选课.学号 and 课程号=‘cs-110’;
    b、select 姓名 from 学生,选课 where 课程号=‘cs-110’;
    c、select 姓名 from 学生,选课 where 选课.课程号=‘cs-110’;
    d、select 姓名 from 学生 选课 where 学生.学号=选课.学号 and 课程号=‘cs-110’;

39、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询1996年出生的学生姓名及其秋季所修课程的课程号及成绩。正确的sql语句是_____ 。
    a、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and year(出生日期)=1996 and 开课学期=’秋’;
    b、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and 出生日期=1996 and 开课学期=’秋’;
    c、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.出生日期=1996 and 课程.开课学期=’秋’;
    d、select 姓名,课程号,成绩 from 学生,选课,课程where 学生.学号=选课.学号 and 学生.year(出生日期)=1996 and 课程.开课学期=’秋’;

40、有一个学生表student,包含主键s#(学生编号)等。又有分数表sc,包含s#(学生编号)、score(分数)等。已知student表中共有50个学生,有45人参加了考试(分数存在sc表中),其中10人不及格。执行以下sql语句:select * from student where exists (select s# from sc where score<60 ), 可返回_________条记录。
    a、50
    b、45
    c、10
    d、35

第7讲测验

1、已知s(s#,sn,age,sex),s#学号,sn姓名。若要检索所有比'王华'年龄大的学生姓名、年龄和性别,正确的select语句是_________。
    a、select sn, age, sex from s where age>(select age from s where sn='王华')
    b、select sn,age,sex from s where sn='王华'
    c、select sn,age,sex from s where age>(select age where sn='王华')
    d、select sn,age,sex from s where age > 王华.age

2、在sql语言中,子查询是_________。
    a、嵌入到另一个查询语句之中的查询语句
    b、返回单表中数据子集的查询语言
    c、选取多表中字段子集的查询语句
    d、选取单表中字段子集的查询语句

3、设关系teacher的结构为:teacher(t# char(3), tname char(10), d# char(2), salary float(2)),其中t#教师编号,tname教师姓名,d#系号,salary工资。dept(d# char(2),dname char(10),dean char(10)),dname系名,dean系主任。若要将所有计算机系的教师工资上调10%,则可用_________。
    a、update teacher set salary = salary * 1.1 where d# in ( select d# from dept where dname=‘计算机’);
    b、update salary = salary * 1.1 where d# in ( select d# from dept where dname =‘计算机’);
    c、update salary = salary * 1.1 where d# in (select d# from dept where dname = 计算机);
    d、update table teacher set salary = salary * 1.1 where d# in ( select d# from dept where dname = ‘计算机’);

4、已知titles(title_id char(4), title char(20), pub_id char(4), price integer),其中title_id图书编号,title图书名,pub_id出版商编号,price价格。列出titles表中其价格高于出版商id为0736的出版商出版的书的最大价格的书的标题和id,合适的查询语句是_________。
    a、select title_id,title from titles where price>all(select price from titles where pub_id=‘0736’)
    b、select title_id,title from titles where price>all(select price from titles) and pub_id=‘0736’
    c、select title_id,title from titles where price>any(select price from titles where pub_id=‘0736’)
    d、select title_id,title from titles where price>any(select price from titles) and pub_id=‘0736’

5、陈述a:subquery1 union subquery2语句,其中subquery1和subquery2查询中相应的列必须以同一顺序出现。 陈述b:group by和having子句不能在子查询中使用,这些子句只能用在最后一个查询结束时来总结和排序最后结果集。 关于陈述a和b,下列说法正确的是_________。
    a、陈述a正确,陈述b错误
    b、都是正确的
    c、都是错误的
    d、陈述a错误,陈述b正确

6、下面有关having子句,说法不正确的是_________。
    a、使用having子句的同时不能使用where子句
    b、having子句必须与group by 子句同时使用,不能单独使用
    c、使用having子句的同时可以使用where子句
    d、使用having子句的作用是过滤掉不满足条件的分组

7、在sql中,与"not in"等价的操作符是_________。
    a、<> all
    b、= some
    c、<> some
    d、= all

8、以下定义的4个视图中,能够进行更新操作的是_________。
    a、create view s_male(学号,姓名) as select 学号,姓名 from student where 班号='09031'
    b、create view s_g(学号,姓名,课程名,分数) as select s.学号,姓名,课程名,分数 from student s,score sc,course c where s.学号=sc. 学号and sc. 课程号 = c. 课程号
    c、create view s_avg(学号,平均分) as select 学号,avg(分数) from score where 分数is not null group by 学号
    d、create view s_female(姓名,出生日期) as select 姓名,出生日期 from student where 性别='女'

9、已知选课关系sc(s# char(8), c# char(8), grade integer),s#学号,c#课程号,grade成绩。检索选修4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的select语句是_________。
    a、select s#,sum(grade) as sgrade from sc where grade>=60 group by s# having count(*)>=4 order by sgrade desc
    b、select s#,sum(grade) as sgrade from sc where grade>=60 group by s# having count(*)>=4 order by sgrade
    c、select s#,sum(grade) as sgrade from sc where grade>=60 having count(*)>=4 group by s# order by sgrade desc
    d、select s#,sum(grade) as sgrade from sc where grade>=60 and count(*)>=4 group by s# order by sgrade desc

10、已知选课关系sc(s# char(8), c# char(8), grade integer),s#学号,c#课程号,grade成绩。检索选修课程'c2'的学生中成绩最高的学生的学号。正确的select语句是_________。
    a、select s# from sc where c#='c2' and grade >= all(select grade from sc where c#='c2')
    b、select s# from sc where c#='c2' and grade >=(select grade from sc where c#='c2')
    c、select s# from sc where c#='c2' and grade in (select grade from sc where c#='c2')
    d、select s# from sc where c#='c2' and grade not in(select grade from sc where c#='c2')

11、关于sql视图更新的可执行性,下列说法不正确的是_________。
    a、对于由单一table子集构成的视图,即如果视图是从单个基本表使用选择、投影操作导出的,并且包含了基本表的主键,则不能更新
    b、如果视图的select目标列包含聚集函数,则不能更新
    c、如果视图中包括了group by子句,则不能更新
    d、如果视图是由单个表的列构成,但并没有包括主键,则不能更新

12、已知关系模式student (s# char(8) primary key, sname char(10), ssex char(2),sage integer, d# char(2), sclass char(6)),在此基础上定义了视图create view cstud(s#, sname, sclass) as ( select s#, sname, sclass from student where d# =‘03’)。若要对该视图进行更新,下列语句正确的是_________。
    a、insert into cstud values ( “98030104”, “张三丰”, “980301” );
    b、insert into cstud values (98030104, “张三丰”, “980301”);
    c、insert into cstud values (“98030104”, 张三丰, null, null, “03” , “980301”);
    d、insert into cstud values (null, “张三丰”, “980301”);

13、合并多个查询结果集,应使用_________保留字。
    a、union
    b、join
    c、into
    d、and

14、假如有两个表的连接是这样的:table_1 inner join table_2,其中table_1和table_2是两个具有公共属性的表,这种连接会生成哪种结果集_________。
    a、只包括table_1和table_2中满足条件的行的组合结果
    b、包括table_1中的所有行但不包括table_2的不匹配行的所有组合结果
    c、包括table_2中的所有行但不包括table_1的不匹配行的所有组合结果
    d、包括两个表的所有行的组合结果

15、有关sql语言的空值处理,以下说法不正确的是_________。
    a、除is [not] null之外,空值满足任何查找条件
    b、如果null参与比较运算,有些情况下是可以判断为真的或为假的。
    c、如果null参与聚集运算,则除count(*)之外其它聚集函数都忽略null
    d、如果null参与算术运算,则该算术表达式的值为null

16、求既学过002号课,又学过003号课的同学学号,下列sql语句不正确的是_________。
    a、select s# from sc where c# = ‘002’ and c#=‘003’;
    b、select s# from sc where c# = ‘002’ intersect select s# from sc where c# = ‘003’;
    c、select s# from sc where c# = ‘002’ and s# in (select s# from sc where c# =‘003’);
    d、select s1.s# from sc s1, sc s2 where s1.s# = s2.s# and s1.c#=‘002’ and s2.c#=‘003 ;

17、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句: select sname from student where s# not in (select s# from sc where student.s#=sc.s# and c#= ‘c01’ and score>=60); 关于其查询结果,下列说法正确的是_____。
    a、剔出掉c01号课程及格学生的其他学生的姓名
    b、c01号课程及格的所有学生的姓名
    c、c01号课程不及格的所有学生的姓名
    d、剔出掉c01号课程不及格学生的其他学生的姓名
    e、其它选项的说法都不正确

18、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# in (select s# from sc where student.s#=sc.s# and c#= ‘c01’ and score>=60); 关于其查询结果,下列说法正确的是_____。
    a、c01号课程及格的所有学生的姓名
    b、c01号课程不及格的所有学生的姓名
    c、剔出掉c01号课程不及格学生的其他学生的姓名
    d、剔出掉c01号课程及格学生的其他学生的姓名
    e、其它选项的说法都不正确

19、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# not in ( select s# from sc, course where t# = ‘03’ and sc.c# = c.c#); 关于其查询结果,下列说法正确的是_____。
    a、没学过03号教师讲授过的任一门课的学生的姓名
    b、学过03号教师讲授过的某一门课的学生的姓名
    c、学过03号教师讲授过的所有门课的学生的姓名
    d、没学全03号教师讲授过的所有门课的学生的姓名
    e、其它选项的说法都不正确

20、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc where score<60 group by c# having count(*)>2; 关于其查询结果,下列说法正确的是_____。
    a、有2人以上不及格课程的同学的学号
    b、有2门以上不及格课程的同学的学号
    c、有2门以上及格课程的同学的学号
    d、有2人以上及格课程的同学的学号
    e、其它选项的说法都不正确

21、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc where score<60 and count(*)>2 group by s#; 关于其查询结果,下列说法正确的是_____。
    a、其它选项的说法都不正确
    b、有2门以上不及格课程的同学的学号
    c、有2门以上及格课程的同学的学号
    d、有2人以上不及格课程的同学的学号
    e、有2人以上及格课程的同学的学号

22、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select sname from student where s# not in ( select s# from sc, course c, teacher t where t.tname = 李明’and sc.c# = c.c# and t.t# = c.t# ); 关于其查询结果,下列说法正确的是_____。
    a、列出没学过李明老师讲授任一课程的学生姓名
    b、列出学全了李明老师讲授所有课程的学生姓名
    c、列出学过李明老师讲授某一课程的学生姓名
    d、列出没学全李明老师讲授所有课程的学生姓名
    e、其它选项的说法都不正确

23、已知如下关系:学生student(s#, sname),课程course(c#, cname, t#),选课sc(s#, c#, score),教师t(t#, tname)。其中s#为学号,sname为学生命名,c#为课号,cname为课程名,t#为教师编号,score为成绩,tname为教师名。 阅读sql语句 select s# from sc sc1 where sc1.c# = ‘c01’ and s# in (select s# from sc sc2 where sc2.c# =‘c02’and sc1.s#=sc2.s# and sc1.score>sc2.score); 关于其查询结果,下列说法正确的是_____。
    a、c01课程比c02课程成绩高的所有学生的学号
    b、c01同学比c02同学成绩高的所有课程的课号
    c、比c02课程成绩高的所有学生的学号
    d、比c02同学c01课程成绩高的所有学生的学号
    e、其它选项的说法都不正确

24、现有关系数据库如下:学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数),用sql语言实现题目:检索没有任何一门课程成绩在80分以下的所有学生的信息,包括学号、姓名和专业,正确的sql语句是_____。
    a、select 学号,姓名,专业 from 学生 where 学号 not in (select 学号 from 选课 where 分数<80)
    b、select 学号,姓名,专业 from 学生,选课 where 学号 not in (select 学号 from 选课 where 分数<80)
    c、select 学号,姓名,专业 from 学生,选课 where 学号 in (select 学号 from 选课 where 分数<80)
    d、select 学号,姓名,专业 from 学生 where 学号 in (select 学号 from 选课 where 学生.学号=选课.学号 and分数<80)

25、现有关系数据库如下: 学生(学号,姓名,性别,专业、奖学金),课程(课程号,课程名,学分),选课(学号,课程号,分数), 用sql语言实现题目:对成绩得过满分(100分)的学生,如果没有获得奖学金的,将其奖学金设为1000元,正确的sql语句是_____。
    a、update 学生 set 奖学金=1000 where 奖学金<=0 and 学号 in (select 学号 from 选课 where 分数=100)
    b、update 学生 set 奖学金=1000 where 奖学金≤0 and 学号 in (select 学号 from 选课 where 分数=100)
    c、update 学生 set 奖学金=’1000’where 奖学金<=0 and 学号 in (select 学号 from 选课 where 分数=100)
    d、update 学生 set 奖学金=1000 where 奖学金<=0 and 学号 not in (select 学号 from 选课 where 分数=100)

26、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 求既学过“1001”号课,又学过“2002”号课的所有学生的学号。正确的sql语句是_____。
    a、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 in (select distinct 学号 from 选课 where 课号=‘2002’ );
    b、select distinct 学号 from 选课 where 课号=‘1001’ and 课号=‘2002’;
    c、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 in ( from 选课 where 课号=‘2002’ );
    d、select distinct 学号 from 选课 where 课号=‘1001’ and 学号 (select distinct 学号 from 选课 where 课号=‘2002’ )

27、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 列出各门课的平均成绩、最高成绩、最低成绩和选课人数。正确的sql语句是_____。
    a、select 课号,avg(成绩),max(成绩),min(成绩),count(学号)  from 选课 group by 课号;
    b、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 order by 课号;
    c、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 where 课号;
    d、select 课号,avg(成绩),max(成绩),min(成绩),count(学号) from 选课 having 课号;

28、如下几个表所示学生、课程、必修课和选课关系,用sql语言实现下列操作。 列出最少选修了三门课程的学生姓名。正确的sql语句是_____。
    a、select 姓名 from 学生 where 学号 in  (select 学号 from 选课 group by 学号 having count(*) >= 3);
    b、select 姓名 from 学生 where 学号 in (select 学号 from 选课 group by 学号 count(*) >= 3);
    c、select 姓名 from 学生 where 学号 (select 学号 from 选课 group by 学号 having count(*) >= 3);
    d、select 姓名 from 学生 where 学号 in (select 学号 from 选课 order by 学号 having count(*) >= 3);

29、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询秋季学期有一门以上课程获90分以上成绩的学生名。正确的sql语句是_____。
    a、select 姓名 from 学生 where 学号 in (select 学号 from  选课 where 成绩 >= 90.0 and 课程号 in (select 课程号  from 课程 where 开课学期=‘秋’));
    b、select 姓名 from 学生 课程 选课 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and 成绩 >= 90.0 and 开课学期=’秋’;
    c、select 姓名 from 学生 where 学号 in (学号 from 选课 where 成绩 >= 90.0 and 课程号 in (select 课程号 from 课程 where 开课学期=‘秋’));
    d、select 姓名 from 学生 where 学号 in (select 学号 from 选课 where 成绩 >= 90.0 and 课程号 in (课程号 from 课程 where 开课学期=‘秋’));

30、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 试列出计算机系所开课程(cs标志)的最高成绩、最低成绩和平均成绩。如果某门课程的成绩不全(即“成绩”中有null出现),则该课程不予统计,结果按“课程号”升序排列。正确的sql语句是_____。
    a、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    b、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    c、select max(成绩),min(成绩),avg(成绩) from 选课 where 课程号= ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null) order by 课程号;
    d、select 课程号,max(成绩),min(成绩),avg(成绩) from 选课 where 课程号 like ‘cs%’ group by 课程号 having 课程号 not in (select 课程号 from 选课 where 成绩 is null)

31、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0, 则下列说法正确的是____ ____。
    a、该元组在“子查询1 except 子查询2”中出现0次;
    b、该元组在“子查询1 union 子查询2”中出现m n次;
    c、该元组在 “子查询1 except all 子查询2”中出现m – n次;
    d、该元组在“子查询1 intersect 子查询2”中出现min(m,n)次;

32、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
    a、该元组在“子查询1 union all 子查询2”中出现m n次;
    b、该元组在 “子查询1 union 子查询2”中出现m n次;
    c、该元组在“子查询1 union all 子查询2”中出现1次;
    d、该元组在 “子查询1 union 子查询2”中出现min(m,n)次;

33、假设一个元组在子查询1中出现m次,在子查询2中出现n次,其中m>0,n>0,则下列说法正确的是_________。
    a、该元组在“子查询1 except 子查询2”中出现0次;
    b、该元组在“子查询1 union 子查询2”中出现m n次;
    c、该元组在 “子查询1 except all 子查询2”中出现m – n次;
    d、该元组在“子查询1 union all 子查询2”中出现max(m,n)次;

34、在下列关于视图的叙述中,正确的是_______。
    a、当某一视图删除后,由该视图导出的其它视图也将自动删除;
    b、若导出某视图的基本表被删除,该视图将不受任何影响;
    c、视图—旦建立,就不能被删除;
    d、当修改某一视图时,导出该视图的基本表也随之修改。

35、sql语言中的视图是一种_________。
    a、子模式及子模式到模式的映像;
    b、全局模式及全局模式到子模式的映像;
    c、内模式及内模式到模式的映像;
    d、模式及模式到概念模式的映像;
    e、其它都不是。

36、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询缺成绩的学生名及课程号。正确的sql语句是_____。
    a、select 姓名,课程号 from 学生,选课 where 学生.学号=选课.学号 and 成绩 is null;
    b、select 姓名,课程号 from 学生,选课 where 学生.学号=选课.学号 and 成绩=‘ ’;
    c、select 姓名,课程号 from 学生,选课 where 成绩 is null;
    d、select 姓名,课程号 from 学生,选课 where 成绩=‘ ’;

37、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 统计学生的平均身高。正确的sql语句是_____ 。
    a、select avg(身高) from 学生;
    b、select count(身高) from 学生;
    c、select 身高,avg(身高) from 学生;
    d、select aver(身高) from 学生;

38、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询选修cs-110课程的学生名。正确的sql语句是_____。
    a、select 姓名 from 学生,选课 where 学生.学号=选课.学号 and 课程号=‘cs-110’;
    b、select 姓名 from 学生,选课 where 课程号=‘cs-110’;
    c、select 姓名 from 学生,选课 where 选课.课程号=‘cs-110’;
    d、select 姓名 from 学生 选课 where 学生.学号=选课.学号 and 课程号=‘cs-110’;

39、如下几个表所示学生、课程和选课关系,用sql语言实现下列操作。 查询1996年出生的学生姓名及其秋季所修课程的课程号及成绩。正确的sql语句是_____ 。
    a、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and year(出生日期)=1996 and 开课学期=’秋’;
    b、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.学号=选课.学号 and 选课.课程号=课程.课程号 and 出生日期=1996 and 开课学期=’秋’;
    c、select 姓名,课程号,成绩 from 学生,选课,课程 where 学生.出生日期=1996 and 课程.开课学期=’秋’;
    d、select 姓名,课程号,成绩 from 学生,选课,课程where 学生.学号=选课.学号 and 学生.year(出生日期)=1996 and 课程.开课学期=’秋’;

40、有一个学生表student,包含主键s#(学生编号)等。又有分数表sc,包含s#(学生编号)、score(分数)等。已知student表中共有50个学生,有45人参加了考试(分数存在sc表中),其中10人不及格。执行以下sql语句:select * from student where exists (select s# from sc where score<60 ), 可返回_________条记录。
    a、50
    b、45
    c、10
    d、35

第8讲 sql语言与数据库完整性和安全性

第8讲模拟练习题随堂测验

1、sql语言的grant和revoke语句主要是用来维护数据库的_________。
    a、安全性
    b、完整性
    c、可靠性
    d、一致性

2、安全性控制的防范对象是_________,防止他们对数据库数据的存取。
    a、非法非授权用户
    b、不符合语义的数据
    c、不正确的数据
    d、不符合约束的数据

3、在数据库的安全性控制中,授权的数据对象的_________,授权子系统就越灵活。
    a、范围越小
    b、约束越细致
    c、范围越大
    d、约束范围大

4、关系模型的完整性包括_________。
    a、其他都是
    b、实体完整性
    c、参照完整性
    d、用户定义完整性

5、已知employee表中具有默认约束df_email,删除该约束的语句为_________。
    a、alter table employee drop constraint df_email
    b、alter table employee remove constraint df_email
    c、alter table employee delete constraint df_email
    d、remove constraint df_email from table employee

6、关系模型中有三类基本的完整性约束,定义外部关键字实现的是_________。
    a、参照完整性
    b、实体完整性
    c、域完整性
    d、实体完整性、参照完整性和域完整性

7、关于dbms的安全机制,下列说法不正确的是_________。
    a、当有对db访问操作时,任何人都被允许访问
    b、强制安全性机制是通过对数据和用户强制分类,从而使得不同类别用户能够访问不同级别的数据
    c、自主安全性是通过授权机制来实现的
    d、推断控制机制是防止通过历史信息或统计信息,推断出不该被其知道的信息,防止通过公开信息推断出私密信息

8、create table有三种功能,以下不是其中一项功能的是_________。
    a、定义安全性约束
    b、定义关系模式
    c、定义完整性约束
    d、定义物理存储特性

9、col_constr列约束只能应用在单一列上,下面不是应用在单一列上的约束是_________。
    a、foreign key
    b、unique
    c、search_cond
    d、primary key

10、要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是_________。
    a、alter table user add constraint ck_age check(age>16)
    b、alter table user add constraint df_age default(16) for age
    c、alter table user add constraint uq_age unique(age>16)
    d、alter table user add constraint df_age default(16)

第8讲测验

1、sql语言的grant和revoke语句主要是用来维护数据库的_________。
    a、安全性
    b、完整性
    c、可靠性
    d、一致性

2、安全性控制的防范对象是_________,防止他们对数据库数据的存取。
    a、非法非授权用户
    b、不符合语义的数据
    c、不正确的数据
    d、不符合约束的数据

3、在数据库的安全性控制中,授权的数据对象的_________,授权子系统就越灵活。
    a、范围越小
    b、约束越细致
    c、范围越大
    d、约束范围大

4、关系模型的完整性包括_________。
    a、其他都是
    b、实体完整性
    c、参照完整性
    d、用户定义完整性

5、已知employee表中具有默认约束df_email,删除该约束的语句为_________。
    a、alter table employee drop constraint df_email
    b、alter table employee remove constraint df_email
    c、alter table employee delete constraint df_email
    d、remove constraint df_email from table employee

6、关系模型中有三类基本的完整性约束,定义外部关键字实现的是_________。
    a、参照完整性
    b、实体完整性
    c、域完整性
    d、实体完整性、参照完整性和域完整性

7、关于dbms的安全机制,下列说法不正确的是_________。
    a、当有对db访问操作时,任何人都被允许访问
    b、强制安全性机制是通过对数据和用户强制分类,从而使得不同类别用户能够访问不同级别的数据
    c、自主安全性是通过授权机制来实现的
    d、推断控制机制是防止通过历史信息或统计信息,推断出不该被其知道的信息,防止通过公开信息推断出私密信息

8、create table有三种功能,以下不是其中一项功能的是_________。
    a、定义安全性约束
    b、定义关系模式
    c、定义完整性约束
    d、定义物理存储特性

9、col_constr列约束只能应用在单一列上,下面不是应用在单一列上的约束是_________。
    a、foreign key
    b、unique
    c、search_cond
    d、primary key

10、要建立一个约束,保证用户表(user)中年龄(age)必须在16岁以上,下面语句正确的是_________。
    a、alter table user add constraint ck_age check(age>16)
    b、alter table user add constraint df_age default(16) for age
    c、alter table user add constraint uq_age unique(age>16)
    d、alter table user add constraint df_age default(16)

第9讲 嵌入式sql语言之基本技巧

第9讲模拟练习题随堂测验

1、以下嵌入式sql语句,没有错误的是_________。
    a、exec sql select sname,sage into vsname,vsage from student where sname = specname;
    b、exec sql begin declare section char vsname[10], specname[2]=“lzt”; int vsage;
    c、exec sql select sname,sage into :vsname, :vsage from student where sname = :specname;
    d、其他有多于一个的选项没有错误。

2、关于事务,下列说法正确的是__________。
    a、必须以begin transaction和end transaction显性地标记开始和结束;
    b、事务在处理过程中是可以被中断的,且中断前的执行结果也是有效的;
    c、一个事务仅能包含一条sql语句,多条sql语句将产生多个事务;
    d、sql语句在执行过程中,必须有提交或撤消语句才能确认其对数据库的永久操作结果;

3、关于游标,下列说法正确的是_________。
    a、游标使用之前需要先声明再打开;
    b、一个游标只能打开与关闭一次;
    c、游标中的 sql语句被执行并产生结果是在declare cursor时进行的;
    d、若要重新执行游标中的sql语句,需要重新声明游标并打开游标;

4、关于游标,下列说法不正确的是_________。
    a、游标一次定义后只能打开关闭一次,再次使用必须再次定义;
    b、游标是指向某检索记录集的指针;
    c、游标通过eof标记记录集的结束;
    d、游标定义以后并未立即执行,打开后才执行;

5、嵌入式sql语言 中whenever的作用范围是_________。
    a、其后的所有exec sql语句直到程序结束;
    b、其后的所有exec sql语句直到与数据库断开连接;
    c、其后的所有exec sql语句直到程序中出现另一条相同条件的whenever语句为止。
    d、其后的所有exec sql语句直到其执行过程中遇到另一条相同条件的 whenever语句为止。

6、关于事务,下列说法不正确的是_________。
    a、事务是一条或多条sql语句的一次执行;
    b、事务的一组更新操作是原子不可分的;
    c、事务的操作状态是正确的,符合一致性的操作规则;
    d、并发执行的多个事务之间可能互相影响,需要程序员考虑周全;

7、以下哪一个不是状态捕获语句exec sql whenever condition action中condition所指代的条件__________。
    a、sqlerror
    b、not found
    c、sqlwarning
    d、continue

8、给定程序段落如下(示意)。 int main{ exec sql whenever sqlerror stop; …… ..x.. …… goto s1; exec sql whenever sqlerror continue ……. …y… …….. s1:…..z….. } 问,如下说法正确的是________。
    a、如果由y到z区域执行发生错误,则continue(继续向下执行);
    b、如果x 区域发生错误则continue(继续向下执行);
    c、如果由x到z区域执行发生错误,则跳转到stop标号处继续执行;
    d、如果y区域执行发生错误,则跳转到stop标号处继续执行;

9、高级语言有变量vsname,vsage,vspecname。若要从数据库中取出对应值赋给高级语言中的变量,下列表达正确的是_______。
    a、exec sql select sname ,sage into vsname,vsage from student where sname=vspecname
    b、exec sql select sname ,sage into :vsname,:vsage from student where sname=:vspecname
    c、select sname ,sage into :vsname,:vsage from student where sname=:vspecname
    d、exec sql :vsname,:vsage from student where sname=:vspecname

10、对于下面一段程序,当语句4执行出错后,应该执行哪条语句______。 exec sql whenever sqlerror continue; //语句1 exec sql whenever sqlerror goto s2; //语句2 exec sql whenever sqlerror goto handle_error; //语句3 … … exec sql create table custs //语句4 (cids char(4) not null, cname varchar(13), … …); if (strcmp(sqlstate, “82100”) == 0) //语句5 <处理82100错误的程序> … s2:… … //语句6 … handle_error:… … //语句7 …
    a、执行语句2
    b、执行语句3
    c、执行语句5
    d、执行语句6

11、关于嵌入式sql语言状态捕获处理机制的说法,不正确的是_________。
    a、状态捕获及处理机制由三部分构成:(1)设置sql通信区sqlca;(2)设置状态捕获语句;(3)状态处理程序。
    b、状态捕获语句可以作用于整个程序。
    c、状态捕获语句容易引发整个程序进入无限循环。
    d、dbms记录状态信息有三种方法: (1)sqlcode;(2)sqlca.sqlcode;(3)sqlstate

12、在嵌入式sql语言中使用游标的目的在于_________。
    a、区分sql与宿主语言
    b、与数据库通信
    c、处理错误信息
    d、处理多行记录

13、关于游标的使用,如下语句正确的编译顺序是_________。 1)exec sql open cur_student; 2)exec sql fetch cur_student into :vsno, :vsname, :vsclass; 3)exec sql declare cur_student cursor for select sno, sname, sclass from student where sclass=‘035101’ ; 4)exec sql close cur_student;
    a、1234234
    b、3124124
    c、3214214
    d、1324324

14、在嵌入式sql语言中,宿主语言向sql语句输入数据,主要用程序变量来实现,为了区别字段名,要求程序变量名前必须加符号_________做标志。
    a、;
    b、.
    c、
    d、:

15、事务的隔离性是指_________。
    a、一个事务内部的操作及使用的数据对并发的其他事务而言是独立的、互不相干的;
    b、已提交的事务,其数据将被完全写到永久存储设施上;而对未提交的事务,其对永久存储设施上的操作将会被恢复,即对永久存储设施上的数据没有任何影响;
    c、事务中包括的所有操作要么都做,要么都不做;
    d、事务必须是使数据库从一个一致性状态变到另一个一致性状态;

16、事务的原子性是指_________。
    a、一个事务内部的操作及使用的数据对并发的其他事务而言是独立的、互不相干的;
    b、已提交的事务,其数据将被完全写到永久存储设施上;而对未提交的事务,其对永久存储设施上的操作将会被恢复,即对永久存储设施上的数据没有任何影响;
    c、事务中包括的所有操作要么都做,要么都不做;
    d、事务必须是使数据库从一个一致性状态变到另一个一致性状态;

17、事务的持久性是指_________。
    a、一个事务内部的操作及使用的数据对并发的其他事务而言是独立的、互不相干的;
    b、已提交的事务,其数据将被完全写到永久存储设施上;而对未提交的事务,其对永久存储设施上的操作将会被恢复,即对永久存储设施上的数据没有任何影响;
    c、事务中包括的所有操作要么都做,要么都不做;
    d、事务必须是使数据库从一个一致性状态变到另一个一致性状态;

18、事务是数据库运行的基本单位。如果一个事务执行成功,则全部更新结果将被写到永久存储设施上;如果一个事务执行失败,则对永久存储设施上的数据已做过的更新被恢复原状,好像整个数据库从未有过这些更新,这样保持了数据库处于_________状态。
    a、安全性
    b、一致性
    c、完整性
    d、可靠性

19、通过游标对表进行删除或者更新操作时,where current of的作用是_________。
    a、为了提交请求
    b、释放游标当前的操作记录
    c、允许更新或删除当前游标的记录
    d、锁定游标当前的操作记录

20、通过游标操纵数据库,以下说法不正确的是_________。
    a、在定义游标的查询语句时,必须加上for update子句
    b、使用for update子句没有加of表示通过游标可以修改表中的任何一列
    c、for update of age 表示通过游标只能对age属性进行修改
    d、使用for update子句表示只能通过游标修改表数据,而不能删除表数据

21、执行下面的程序: int main() { exec sql whenever sqlerror goto handle_error; exec sql create table customers(cid char(4) not null, cname varchar(13), …); … handle_error: exec sql drop customers; exec sql disconnect; fprintf(stderr,”could not create customers table\n”); return -1; } 如果customers表在执行过程中出现了问题,没有人为干预,则该程序“exec sql drop customers;”语句将被执行的次数为_________。
    a、0次
    b、1次
    c、不确定的有限次数
    d、无限次数

猜你喜欢

  • 2023-02-27 01:04
  • 2023-02-27 00:54
  • 2023-02-27 00:44
  • 2023-02-27 00:39
  • 2023-02-27 00:15
  • 2023-02-26 23:57
  • 2023-02-26 23:55
  • 2023-02-26 23:49
  • 2023-02-26 23:44
  • 2023-02-26 22:56
网站分类
最新发表
标签列表
网站地图