总结1-7章 书本课后习题。


第一章

一、选择题

  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. M:1
    B. M:N
    C. 1:M
    D. 1:1
  9. 按照传统的数据模型分类,数据库系统可以分为___三种类型?
    A. 大型、中型和小型。
    B. 西文、中文和兼容。
    C. 层次、网状和关系。
    D. 数据、图形和多媒体。
  10. 为了保证数据库的数据独立性需要修改___。
    A. 三层模式之间的两级映像
    B. 概念模式与内模式
    C. 概念模式与外模式
    D. 三层模式
  11. 数据库系统的数据独立性是指___。
    A. 不会因为数据的变化而影响应用程序
    B. 不会因为系统数据存储结构与数据逻辑结构的变化而影响应用程序
    C. 不会因为存储策略的变化而影响存储结构
    D. 不会因为某些存储结构的变化而影响其他存储结构

二、填空题

  1. 数据管理技术经历___、__ 和 ___ 三个阶段。
  2. 数据库是长期存储在计算机内、有__的、可__的数据集合。
  3. DBMS是指__。它是位于__和__之间的一层管理软件。
  4. DBMS管理的是__的数据。
  5. 数据库技术中,数据模型可以分为__和__两种类型。
  6. 逻辑数据模型可以分为__和__、__ 。
  7. 逻辑数据模型是由__、__ 和 __ 三部分组成的。
  8. 数据库体系结构按照__、__ 和 __ 三级结构进行组织。
  9. 数据独立性,包括 __ 和 __ 两级。
  10. 在数据库的三级模式体系结构中,概念模式与内模式之间的映像实现数据库的 __ 独立性,概念模式与外模式之间的映像实现数据库的 __ 独立性。

答案

一、选择题

  1. C
  2. B
  3. C
  4. A
  5. B
  6. B
  7. A
  8. B
  9. C
  10. A
  11. B

二、填空题

  1. 数据管理技术经历人工管理阶段文件系统阶段数据库系统阶段三个阶段。
  2. 数据库是长期存储在计算机内、有组织的、可共享的数据集合。
  3. DBMS是指数据库管理系统。它是位于用户操作系统之间的一层管理软件。
  4. DBMS管理的是结构化的数据。
  5. 数据库技术中,数据模型可以分为概念数据模型逻辑数据模型两种类型。
  6. 逻辑数据模型可以分为层次模型网状模型关系模型
  7. 逻辑数据模型是由数据结构数据操作完整性约束三部分组成的。
  8. 数据库体系结构按照外模式模式内模式三级结构进行组织。
  9. 数据独立性,包括物理独立性逻辑独立性两级。
  10. 在数据库的三级模式体系结构中,概念模式与内模式之间的映像实现数据库的物理独立性,概念模式与外模式之间的映像实现数据库的逻辑独立性。

第二章

选择题

第1题

题目:关系模式的任何属性__。
选项与答案

  • A. 不可再分 ✅
  • B. 可再分
  • C. 命名在该关系模式中可以不唯一
  • D. 以上都不是

第2题

题目:关系数据库中的数据是指__。
选项与答案

  • A. 能唯一表示关系的字段
  • B. 不能改动的专用保留字
  • C. 关键的很重要的字段
  • D. 能唯一表示元组的属性或属性集合 ✅

第3题

题目:根据关系模式的完整性规则,一个关系中的“主码”__。
选项与答案

  • A. 不能有两个属性
  • B. 不能成为另外一个关系的外码
  • C. 不允许为空
  • D. 可以取空值

第4题

题目:一个关系只有一个__。
选项与答案

  • A. 超码
  • B. 候选码
  • C. 主码
  • D. 外码

第5题

题目:在关系R(R#,RNS,SN,S)中,R的主码是R#S,S的主码是S#,则S#在R中称为__。
选项与答案

  • A. 超码
  • B. 候选码
  • C. 外码
  • D. 主码

第6题

题目:一个关系数据库文件中的各条记录__。
选项与答案

  • A. 前后顺序不能任意颠倒,一定要按照输入的顺序排列
  • B. 前后顺序可以任意颠倒,不影响库中的数据关系
  • C. 前后顺序不可以任意颠倒,排列顺序不同影响库中的数据关系
  • D. 前后顺序不能任意颠倒,一定要按照码段的顺序排列

第7题

题目:关系数据库应能实现的专门关系运算包括__。
选项与答案

  • A. 排序、索引、统计
  • B. 选择、投影、连接
  • C. 关联、更新、排序
  • D. 显示、打印、制表

第8题

题目:自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的__。
选项与答案

  • A. 元组
  • B. 行
  • C. 记录
  • D. 属性

第9题

题目:有两个关系R和S,分别包含15个和10个元组,则在R∪S、R-S和R∩S中,不可能出现的元组数目是__。
选项与答案

  • A. 15,5,10
  • B. 25,7,7 ✅
  • C. 21,11,4
  • D. 20,10,5

第10题

题目:设有关系R和S,关系代数表达式R-(R-S)表示的是__。
选项与答案

  • A. R∩S
  • B. R∪S
  • C. R-S
  • D. R×S

第11题

题目:同一关系模型的任意两个元组__。
选项与答案

  • A. 不能完全相同
  • B. 可以完全相同
  • C. 必须完全相同
  • D. 以上说法都不对

第12题

题目:设W=R×S,且W、R、S的元组个数分别为p、m、n,那么三者之间满足__。
选项与答案

  • A. p = m + n
  • B. p = m - n
  • C. p = m × n
  • D. p = m ÷ n

第13题

题目:关系运算中花费时间最长的可能是______。
选项与答案

  • A. 选择
  • B. 投影
  • C. 笛卡尔积
  • D. 关系代数

第14题

题目:在关系模型中,一个候选码是______。
选项与答案

  • A. 必须由多个属性组成
  • B. 可以由一个或多个属性组成
  • C. 谓词运算
  • D. 集合运算

第15题

题目:关系代数运算是以______。
选项与答案

  • A. 集合运算
  • B. 谓词运算
  • C. 值运算
  • D. 以上说法都不对

填空题

第1题

题目:关系模型的完整性规则包括______、______ 和 __。
答案:实体完整性、参照完整性、用户定义的完整性


第2题

题目:连接运算是由__ 和__ 操作组成的。
答案:笛卡尔积、选择


第3题

题目:自然连接运算是由__、__和__组成的。
答案:笛卡尔积、选择、投影


第4题

题目:关系模型由__、__和__组成。
答案:数据结构、数据操作、完整性约束


第5题

题目:实体完整性规则定义了关系中__的约束,不存在没有被标识的元组。
答案:主码(主键)


第6题

题目:参照完整性规则定义__的引用规则,不引用不存在的实体。
答案:外码(外键)


第7题

题目:关系运算可分为__和__两大类,其中关系演算又可分为__和__两类。
答案:关系代数、关系演算 | 元组关系演算、域关系演算


第8题

题目:任何运算都包括__、__和__三大要素。
答案:运算对象、运算符、运算结果


第9题

题目:在传统集合运算中,假定有关系R和S,运算结果为RS:

  • 如果RS中的元组属于R或者属于S,则RS是__运算的结果
  • 如果RS中的元组既属于R又属于S,则RS是__运算的结果
  • 如果RS中的元组属于R而不属于S,则RS是__运算的结果
    答案:并集、交集、差集

第10题

题目:在专门关系运算中:

  1. 从表中按照要求取出指定属性的操作称为__
  2. 从表中选出满足某种条件的元组的操作称为__
  3. 将两个关系中满足一定条件的元组连接到一起构成新表的操作称为__

答案

  1. 投影
  2. 选择
  3. 连接

第11题

题目:传统集合运算包括__、__、__和__4种运算。

答案
并集、差集、交集、笛卡尔积


第12题

题目: 关系数据库中,一个关系就是一张没有重复行、没有重复列的__

答案
二维表


第三章

选择题

第1题

题目:SQL语言是( )的语言,易学习。
选项与答案

  • A)过程化
  • B)非过程化 ✅
  • C)格式化
  • D)导航式

解析:SQL是一种非过程化语言,用户只需指定"做什么"而不需要关心"如何做",由DBMS自动完成数据操作,因此易学易用。


第2题

题目:SQL的缩写是( )。
选项与答案

  • A)Standard Query Language
  • B)Structured Query Language ✅
  • C)Select Query Language
  • D)Some Query Language

解析:SQL全称是Structured Query Language(结构化查询语言),是用于管理关系数据库的标准语言。


第3题

题目:下列SQL语句中,( )不是数据定义语句。
选项与答案

  • A)CREATE INDEX
  • B)ALTER TABLE
  • C)GRANT ✅
  • D)DROP VIEW

解析:GRANT是数据控制语句(DCL),用于权限管理,而其他选项都是数据定义语句(DDL)。


第4题

题目:SQL语言具有两种使用方式,分别称为交互式SQL和( )。
选项与答案

  • A)提示式SQL
  • B)多用户SQL
  • C)嵌入式SQL ✅
  • D)解释式SQL

解析:SQL可通过命令行交互使用,也可嵌入到高级语言程序(如C、Java)中使用。


第5题

题目:下列关于ALTER TABLE语句说法不正确的是( )。
选项与答案

  • A)ALTER TABLE语句可以修改属性名称 ✅
  • B)ALTER TABLE语句可以添加属性
  • C)ALTER TABLE语句可以删除属性
  • D)ALTER TABLE语句可以修改属性数据类型

解析:标准SQL中ALTER TABLE不能直接修改列名(需重建表),但可以增删列或修改数据类型。


第6题

题目:若要删除student数据库中的course表,则可用( )完成。
选项与答案

  • A)DELETE TABLE course
  • B)DELETE course
  • C)DROP course
  • D)DROP TABLE course ✅

解析:删除表结构使用DROP TABLE,DELETE仅删除表中数据。


第7题

题目:若用如下SQL语句创建一个Student表,可以插入到STUDENT表中的是( )。
选项与答案

  • A)('1031', '曾华', 男, 23)
  • B)('1031', '曾华', NULL, NULL) ✅
  • C)(NULL, '曾华', '男', 23)
  • D)('1031', NULL, '男', 23)

解析:Sno和Sname定义为NOT NULL必须赋值,Sgender和Sage允许NULL,且字符值需加引号。


第8题

题目:在teacher表中,要把所有在4500~5000元的教师工资增加200元。以下SQL语句正确的是( )。
选项与答案

  • A)UPDATE teacher SET tsalary=tsalary+200 WHERE tsalary IN 4500 AND 5000
  • B)UPDATE teacher SET tsalary=tsalary+200 WHERE tsalary>4500 AND tsalary<=5000
  • C)UPDATE teacher SET tsalary=tsalary+200 WHERE tsalary BETWEEN 4500 AND 5000 ✅
  • D)UPDATE teacher SET tsalary=tsalary+200 WHERE tsalary>=4500 AND tsalary<5000

解析:BETWEEN包含边界值,是最简洁的范围查询方式。


第9题

题目:在SQL中,保留表的结构而删除表中数据的命令是( )。
选项与答案

  • A)CLEAR
  • B)DELETE ✅
  • C)DROP
  • D)REMOVE

解析:DELETE只清空数据,DROP会删除整个表结构。


第10题

题目:在SQL中,若查询筛选条件为WHERE sname LIKE '[^张,吴]%燕',将筛选出( )值。
选项与答案

  • A)李燕 ✅
  • B)张海燕
  • C)吴海燕
  • D)张吴海燕

解析[^张,吴]表示不以"张"或"吴"开头,%燕表示以"燕"结尾。


第11题

题目:假设成绩表中有25条记录,查询成绩表中分数排在前10%条的命令为( )。
选项与答案

  • A)SELECT 10 PERCENT * FROM 成绩
  • B)SELECT 10 PERCENT * FROM 成绩 ORDER BY 分数
  • C)SELECT 10 PERCENT * FROM 成绩 ORDER BY 分数 DESC ✅
  • D)SELECT 10 * FROM 成绩 ORDER BY 分数 DESC

解析:TOP配合PERCENT和DESC排序可获取前百分比数据。


第12题

题目:在SQL中,使用SELECT( )语句可以消除重复行。
选项与答案

  • A)UNION
  • B)ONLY
  • C)ONLY 1
  • D)DISTINCT ✅

解析:DISTINCT用于返回唯一不同的值。


第13题

题目:在SQL语句中,与表达式“年龄 BETWEEN 20 AND 25”作用相同的表达式是( )。
选项与答案

  • A)年龄>=20 OR 年龄<=25
  • B)年龄>20 AND 年龄<25
  • C)年龄<=20 OR 年龄<=25
  • D)年龄>=20 AND 年龄<=25 ✅

解析:BETWEEN是闭区间包含两端点的语法糖。


第14题

题目:在SQL查询中,要把查询结果按照某几个属性值进行排序时,需要使用下面( )子句。
选项与答案

  • A)HAVING
  • B)GROUP BY
  • C)ORDER BY ✅
  • D)WHERE

解析:ORDER BY指定排序字段,ASC升序(默认),DESC降序。


第15题

题目:在SQL中,用户可以直接操作的是( )。
选项与答案

  • A)基本表
  • B)视图
  • C)基本表或视图
  • D)基本表和视图 ✅

解析:视图是基于基本表的虚拟表,用户可像操作普通表一样操作视图。


第16题

题目:SELECT语句执行结果是( )。
选项与答案

  • A)数据项
  • B)元组 ✅
  • C)表
  • D)数据库

解析:SELECT语句返回的结果是一个临时结果集,这个结果集在逻辑上是一个表(table)结构,包含行(记录)和列(字段)。由多个元组(B选项)组成。


第17题

题目:在SELECT语句中,需对分组情况满足的条件进行判断时,应使用( )。
选项与答案

  • A)WHERE
  • B)GROUP BY
  • C)ORDER BY
  • D)HAVING ✅

解析:关键区别:

  • WHERE:在分组前过滤单个记录
  • HAVING:在GROUP BY之后过滤分组结果
  • 例如:SELECT dept, AVG(salary) FROM employees GROUP BY dept HAVING AVG(salary) > 5000

第18题

题目:SQL中,与">ANY"等价的操作符是( )。
选项与答案

  • A)= SOME
  • B)>MIN ✅
  • C)=ALL
  • D)<>ALL

解析:量词等价关系:

  • >ANY = >MIN(大于子查询结果中的最小值)
  • >ALL = >MAX(大于所有值)
  • =ANY 等价于 IN
  • <>ALL 等价于 NOT IN

第19题

题目:一个数据表可以建立( )个聚集索引。
选项与答案

  • A)3
  • B)16
  • C)255
  • D)1 ✅

解析:聚集索引(Clustered Index)特点:

  • 决定表中数据的物理存储顺序
  • 每个表只能有一个(因为数据不能同时按两种方式物理排序)
  • 通常在主键上自动创建

第20题

题目:索引可以对数据表中( )属性值进行升序或降序排列。
选项与答案

  • A)1个
  • B)n个
  • C)1~n个 ✅
  • D)0个

解析:索引排序规则:

  • 单列索引:对1个字段排序
  • 复合索引:对多个字段(1-n个)排序,如CREATE INDEX idx_name ON table(col1 DESC, col2 ASC)
  • 排序方向可以混合(升序+降序)

第21题

题目:SQL中,不可以创建的索引类型是( )。
选项与答案

  • A)域完整性索引 ✅
  • B)主键索引
  • C)唯一索引
  • D)非聚集索引

解析:索引类型对比:

  • 主键索引:自动创建的聚集/唯一索引
  • 唯一索引:保证列值唯一性
  • 非聚集索引:普通索引
  • "域完整性索引"不是标准分类,域完整性通过数据类型、约束等实现

第22题

题目:视图建立后,在数据字典中存放的是( )。
选项与答案

  • A)查询语句
  • B)组成视图的表的内容
  • C)视图的定义
  • D)产生视图的表的定义 ✅

解析:视图的存储特点:

  • 只存储定义(SELECT语句)
  • 不存储实际数据(是"虚拟表")
  • 每次查询视图时动态执行定义中的查询

第23题

题目:在SELECT语句中使用MAX(属性名)时,该属性的数据类型是( )。
选项与答案

  • A)数值型 ✅
  • B)字符型
  • C)数值型或字符型
  • D)不限制数据类型

解析:聚合函数使用规范:

  • MAX/MIN可用于数值、日期、字符类型
  • 但题目明确问"该属性的数据类型",通常设计时会在数值型字段上使用MAX
  • 字符型虽然可用MAX(按字典序),但实际业务意义不大

第24题

题目:视图是数据库的( )。
选项与答案

  • A)内模式
  • B)外模式 ✅
  • C)模式
  • D)存储模式

解析:数据库三级模式:

  • 外模式(视图层):用户可见的数据视图
  • 模式(逻辑层):全体数据的逻辑结构
  • 内模式(物理层):数据存储方式

第25题

题目:视图可以从( )中导出。
选项与答案

  • A)视图
  • B)基本表
  • C)视图或基本表 ✅
  • D)数据库

解析:视图的数据来源:

  1. 基于基表(最常见)
  2. 基于其他视图(视图嵌套)
  3. 不能直接基于整个数据库
  4. 示例:CREATE VIEW v1 AS SELECT * FROM t1(基表)或 CREATE VIEW v2 AS SELECT * FROM v1(视图)

填空题

第1题

题目:SQL数据定义功能用于定义__、__、__和__等结构。
答案表(TABLE)视图(VIEW)索引(INDEX)模式(SCHEMA)


第2题

题目:SQL按其功能可分为__、__、__和__四类。
答案:数据查询、数据操纵、数据定义、数据控制


第3题

题目:定义模式实际上就是定义一个"命名空间",这样在这个空间上就可以进一步定义该模式包含的__。
答案数据库对象


第4题

题目:SQL Server中,整数类型包括__、__、__和__,它们分别占用__个、__个、__个和__个字节。
答案:bigint(8)、int(4)、smallint(2)、tinyint(1)


第5题

题目:SQL Server中,添加元组使用__语句,修改元组使用__语句,删除元组使用__语句。
答案:INSERT、UPDATE、DELETE


第6题

题目:SQL Server中,删除数据表中元组可以使用__和__语句。
答案:DELETE、TRUNCATE TABLE


第7题

题目:SELECT查询语句中,使用*表示__。
答案:所有列


第8题

题目:如果要把查询结果放到一个新的数据表中,则可以使用__子句。
答案:INTO


第9题

题目:SELECT命令中:

  1. __子句用于选择满足给定条件的元组
  2. 使用__子句可按指定属性值分组
  3. 同时使用__子句可提取满足条件的组
  4. 使用__子句将查询结果按照指定属性值排序
    答案:WHERE、GROUP BY、HAVING、ORDER BY

第10题

题目:SELECT命令进行查询时,如果希望查询结果不出现重复元组,则应在SELECT语句中使用__保留字。
答案:DISTINCT


第11题

题目:SQL Server中,SELECT语句中LIKE子句的通配符有__、__、__和__四种。
答案:%(百分号)、_(下划线)、[][^]


第12题

题目:集合查询中UNION运算是将__合并成为一个新的集合。
答案:多个SELECT语句的结果集


第13题

题目:子查询的条件依赖于父查询,这类查询称为__。
答案:相关子查询


第14题

题目:在嵌套查询中,根据查询的依赖性,可以将子查询分为__和__两种类型。
答案:相关子查询、不相关子查询


第15题

题目:连接查询可分为__、__和__三种类型。
答案内连接(INNER JOIN)外连接(OUTER JOIN)交叉连接(CROSS JOIN)


第16题

题目:外连接查询可分为__、__和__三种类型。
答案:左外连接、右外连接、全外连接


第17题

题目:用户可以根据应用环境的需要,在基本表上建立一个或多个__,以提供多种存取路径,加快查询速度。
答案:索引


第18题

题目:视图是一个虚表,它是从__导出的表。在数据库中,只存放视图的__,不存放视图对应的__。
答案:基本表、定义、数据


第19题

题目:更新视图是指通过视图来__、__、__数据。
答案:插入、删除、修改


第20题

题目:在SQL Server中,删除索引和视图的语句分别是__和__。
答案:DROP INDEX、DROP VIEW


第四章

选择题

第1题

题目:关系模式规范化是为了克服数据库操作中插入异常、删除异常、修改异常和 ______ 等问题。
选项与答案

  • A)数据丢失
  • B)结构不合理
  • C)数据冗余 ✅
  • D)数据的不一致性

解析:规范化主要解决数据冗余和操作异常问题,通过分解关系模式减少重复数据存储。


第2题

题目:关系规范化中删除异常是指 ______。
选项与答案

  • A)不该删除的数据被删除 ✅
  • B)不该插入的数据被插入
  • C)应该删除的数据未被删除
  • D)应该插入的数据未被插入

解析:删除异常指删除主数据时导致关联信息被级联删除(如删除部门信息导致员工信息丢失)。


第3题

题目:关系模式 R(A,B)属于 3NF,下列说法中 ______。
选项与答案

  • A)R 一定消除插入和删除异常
  • B)R 一定属于 BCNF
  • C)R 仍存在一定的插入和删除异常 ✅
  • D)A 和 B 都是

解析:3NF可能仍存在传递依赖导致的异常,需满足BCNF才能完全消除。


第4题

题目:关系数据库中的关系模式 R 最基本要求是属于 ______。
选项与答案

  • A)1NF ✅
  • B)2NF
  • C)3NF
  • D)BCNF

解析:所有关系模式必须满足1NF(属性不可再分)的基本条件。


第5题

题目:关系模式 R 中,如果属性 A 和 B 存在 1 对 1 的联系,则 ______。
选项与答案

  • A)A → B
  • B)B → A
  • C)A ↔ B(双向依赖) ✅
  • D)无明确依赖

解析:1:1联系表示A→B且B→A,存在双向函数依赖关系。


第6题

题目:关系模式 R 中,各级范式之间关系正确的是 ______。
选项与答案

  • A)1NF ⊂ 2NF ⊂ 3NF ✅
  • B)2NF ⊂ 1NF ⊂ 3NF
  • C)3NF ⊂ 2NF ⊂ 1NF
  • D)3NF = 1NF ⊂ 2NF

解析:范式层级关系为1NF⊂2NF⊂3NF⊂BCNF,逐级严格包含。


第7题

题目:最髙规范化程度最高的范式是 ______。
选项与答案

  • A)1NF
  • B)2NF
  • C)3NF
  • D)BCNF ✅

解析:BCNF是3NF的严格超集,规范化程度最高。


第8题

题目:由属性全部是主属性组成的 R,属于的最高范式必定是 ______。
选项与答案

  • A)必定是 1NF
  • B)可能是 1NF
  • C)必定是 3NF ✅
  • D)必定是 BCNF

解析:全主属性关系至少满足3NF(无非主属性传递依赖),但可能不满足BCNF。


第9题

题目:K → Y 能从推理规则导出的充分必要条件是 ______。
选项与答案

  • A)Y ⊆ K⁺(闭包) ✅
  • B)K 是超键
  • C)Y 是外键
  • D)X⁺ ≤ Y⁺

解析:根据Armstrong公理,Y在K的闭包中即可推导出K→Y。


第10题

题目:关系模式 R(学号,姓名,学历或学位,性别)中,因为 ___ 属性 使得 R 不满足第一范式(1NF)。

  • A. 学号
  • B. 姓名
  • C. 学历或学位
  • D. 性别

答案参考C. 学历或学位
解析

  • 1NF 要求属性不可再分,而“学历或学位”是复合属性(可能同时存储两种数据),违反了原子性。
  • 其他属性(学号、姓名、性别)均为单一值,符合 1NF 要求。

二、填空题

  1. 关系模式R中,包含在任一个候选键中的属性是 __。
    答案参考主属性(或候选键属性)。

  1. 下列关系模式R在函数依赖范畴内满足 __ 范式。 关系模式R的实例
学号出生日期
201511202000-02-16
201511212000-02-16
201511222001-03-03
201511232001-12-24

答案参考1NF(若无非主属性部分依赖则可能为2NF)。


  1. 关系模式R中,如果每个属性都是不可再分割的,则R一定属于 __ 规范化原则,即R一定属于 __。 答案参考
    • 第一空:原子性
    • 第二空:1NF

  1. 关系模式R属于1NF,且R中每一个非主属性都 __候选键,则该关系模式为2NF。 答案参考完全函数依赖于(消除部分函数依赖)。

  1. 关系数据库的规范化理论中,执行"分解"时,主要遵守规范化原则,即保持原有的 __ 和 __。 答案参考
    • 无损连接性
    • 函数依赖性

  1. 关系模式R∈1NF,则消除非主属性对候选键的部分函数依赖的关系模式R,称为 __;进一步消除非主属性对候选键的传递函数依赖的关系模式R,称为 __。 答案参考
    • 第一空:2NF
    • 第二空:3NF

  1. 最简单的情况,单个属性是候选键;最极端的情况,整个属性组是候选键,称为 __。
    答案参考全码(或All-Key)。

  1. 由属性集X函数决定的属性的集合,称为 __;被函数依赖集F逻辑蕴涵的函数依赖的全体构成的集合,称为 __。 答案参考
    • 第一空:X的闭包(X⁺)
    • 第二空:F的闭包(F⁺)

  1. 设关系模式R(S,D,M),函数依赖集F={S→D,D→M},则关系模式R的规范化程度最高能够达到 __。
    答案参考2NF(存在传递依赖,未达到3NF)。

  1. __ 是符合某一种级别的关系模式的集合。 答案参考范式(如1NF、2NF等)。


title: 数据库技术与原理 - 第五章 - 课后习题 date: 2025-05-26 21:46:28 tags: [数据库,SqlServer] head:

    • meta
    • name: descriptionx x x content: vitepress-theme-bluearchive Tags
    • meta
    • name: keywords content: vitepress theme bluearchive Tags

第五章书本课后习题。


第五章

选择题

第1题

题目:数据库设计过程中,关系模式的规范化理论是应用在( )阶段。
选项与答案

  • A)需求分析
  • B)概念结构设计
  • C)逻辑结构设计 ✅
  • D)数据库实施

解析:关系模式的规范化理论主要用于逻辑结构设计阶段,通过消除冗余和异常(如插入、删除、更新异常)来优化数据库模式。


第2题

题目:概念模型是应用于信息的( )建模。
选项与答案

  • A)现实世界
  • B)信息世界 ✅
  • C)数据世界
  • D)机器世界

解析:概念模型(如E-R模型)用于在信息世界中对现实世界进行抽象表示,独立于具体的数据库实现。


第3题

题目:在数据库设计中,将E-R图转换成关系数据模型的过程属于( )。
选项与答案

  • A)需求分析阶段
  • B)逻辑设计阶段 ✅
  • C)概念设计阶段
  • D)物理设计阶段

解析:E-R图转换为关系模型是逻辑设计阶段的核心任务,将概念模型映射为具体的表结构。


第4题

题目:合并局部E-R图时,不同E-R模型中,同一属性值的类型、取值范围或取值集合不同,这属于( )。
选项与答案

  • A)属性冲突 ✅
  • B)命名冲突
  • C)结构冲突
  • D)实体冲突

解析:属性冲突指同一属性在不同E-R图中的定义不一致(如数据类型、约束不同),需统一规范。


第5题

题目:数据字典的5类元素是:数据项、数据结构、数据存储、( )和处理过程。
选项与答案

  • A)数据流 ✅
  • B)DFD
  • C)数据域
  • D)数据处理

解析:数据字典包含数据项、数据结构、数据流、数据存储和处理过程,用于全面描述系统中的数据。


第6题

题目:( )是指为了提高某个属性(或属性组)的查询速度,把这个属性(组)上具有相同值的元组集中存放在连续的物理块上,而这个属性(组)称为"聚簇码"。 选项与答案

  • A)聚簇 ✅
  • B)外码
  • C)聚簇码
  • D)候选码

解析:聚簇(Clustering)是一种物理存储优化技术,通过将具有相同聚簇码值的元组物理上邻近存储,显著提高基于该属性的查询效率。


第7题

题目:最著名的概念模型是( )。 选项与答案

  • A)层次模型
  • B)网络模型
  • C)实体-联系模型 ✅
  • D)关系模型

解析:实体-联系模型(E-R模型)是概念设计的标准工具,通过实体、属性和联系三个要素直观地描述现实世界的数据关系。


第8题

题目:关系数据库中,实现实体与实体之间联系是通过关系与关系之间的( )。 选项与答案

  • A)公共存储
  • B)公共索引
  • C)公共码
  • D)公共属性 ✅

解析:关系数据库通过公共属性(外键)建立表间关联,这是关系模型参照完整性的核心机制。


第9题

题目:出版社出版多部图书,每部图书只在一个出版社,出版社与图书之间属于( )联系。 选项与答案

  • A)一对多 ✅
  • B)多对多
  • C)一对一
  • D)多对一

解析:一个出版社对应多本图书,但每本图书只属于一个出版社,这是典型的一对多关系(1:N)。


第10题

题目:在需求分析阶段,用( )来描述用户单位的业务流程。 选项与答案

  • A)数据字典
  • B)数据流程图 ✅
  • C)数据结构
  • D)数据流

解析:数据流程图(DFD)是需求分析阶段的核心工具,通过图形化方式展示系统的数据流动和处理过程。


二、填空题

  1. 数据库系统设计规划阶段需要 __、__ 和 __三个步骤。

答案

  1. 需求分析
  2. 概念结构设计
  3. 逻辑结构设计

  1. 概念结构设计中,分E-R图合并成全局E-R图时,需要解决的冲突包括 __、__、__。
    常见冲突类型:属性冲突、命名冲突、结构冲突。

  1. 命名冲突常有 ___ 和 ___ 两种情况。
    示例:同名异义、异名同义。

  1. 概念结构设计方法有 __、__、__、__ 四种。
    常见方法:自顶向下、自底向上、逐步扩张、混合策略。

  1. 数据流图中,用__代表源点或终点;__ 表示变换数据的处理过程;__ 代表数据存储。
    符号对应
    • 源点/终点:矩形框
    • 处理过程:圆形/椭圆
    • 数据存储:双横线或开口矩形。

  1. 数据库物理结构设计中,数据常见存取方法有__、__、__等。
    示例:索引、聚簇、分区。

  1. 组织数据入库需完成以下工作 __、__、__。
    答案
  • 数据装载
  • 数据校验- 数据转换

  1. 数据抽象一般包括 __和 __两种方法。
    分类:聚集(Aggregation)、分类(Generalization)。

  1. 两个实体间的一对多联系指__。
    答案一对多

  1. 数据库转储与恢复属于数据库设计中 ___ 阶段的任务。
    答案运行与维护阶段。

第六章

一、选择题

第1题

题目:下列叙述中,不正确的是【 C 】
选项
A.介质故障发生的可能性较小,但破坏性大
B.计算机病毒引发的故障是人为故障
C.若完善DBS的设计,故障可以完全避免 ✅
D.恢复子系统是DBS重要组成部分

解析
任何数据库系统都无法完全避免故障(如硬件故障、自然灾害等),完善的DBS设计只能减少故障概率并提高恢复能力。


第2题

题目:写日志文件时应该【 D 】
选项
A.同时完成写数据库的更新与写日志文件
B.先写数据库的更新,后写日志文件
C.顺序可随机
D.先写日志文件,后写数据库的更新 ✅

解析
WAL(Write-Ahead Logging)原则要求先记录日志再修改数据,确保故障时可回溯。


第3题

题目:下列故障中属于事务故障的是【 B 】
选项
A.程序中的ROLLBACK
B. 违反完整性约束 ✅
C. CPU故障
D. 硬盘损坏

解析
事务故障包括:运算溢出、违反完整性约束、死锁等。CPU/硬盘故障属于系统故障。


第4题

题目:主码不允许取空值是【 A 】约束规则
选项
A. 实体完整性 ✅
B. 参照完整性
C. 用户自定义
D. 域完整性

解析
实体完整性规则要求主属性(主码)不能为空,这是关系模型的基本约束。


第5题

题目:性别取值只能是"男"或"女"属于【 C 】约束规则
选项
A. 实体完整性
B. 参照完整性
C. 用户自定义 ✅
D. 域完整性

解析
用户自定义完整性指根据业务规则设定的约束(如性别枚举值、年龄范围等)。


第6题

题目:实现并发控制的主要方法是【 A 】
选项
A. 封锁 ✅
B. 授权
C. 日志
D. 索引

解析
封锁机制(Locking)是解决并发操作冲突的核心技术,包括共享锁/排他锁等。


第7题

题目:关于锁的相容关系正确的是【 C 】
选项
A.X-X相容
B.X-S相容
C.S-S相容 ✅
D.S-X相容

解析
锁相容矩阵:

XS
X××
S×

第8题

题目:拥有最高权限的用户是【 B 】
选项
A.GUEST
B.DBA ✅
C.PUBLIC
D.ROLE

解析
数据库管理员(DBA)拥有所有操作权限,包括用户管理、备份恢复等。


第9题

题目:授予操作权限属于【 B 】
选项
A. 用户标识与鉴别
B. 自主存取控制 ✅
C. 强制存取控制
D. 审计

解析
自主存取控制(DAC)通过GRANT/REVOKE语句实现权限管理。


第10题

题目:关于视图的叙述,错误的是【 D 】
选项
A. 视图不存储数据
B. 提供数据安全机制
C. 实现逻辑独立性
D. 提高访问效率 ✅

解析
视图本质是查询语句的封装,不会提高效率(甚至可能因嵌套查询降低性能)。


二、填空题

  1. 数据库后备副本的主要用途是 __。
    答案参考数据恢复/故障恢复

  1. 在DB恢复时,对已经COMMIT但更新未写入磁盘的事务要执行 __操作。 答案参考REDO(重做已提交事务的更新)。

  1. 当对数据库中某一表进行 __、__、__时,SQL Server 会自动执行触发器所定义的SQL语句。
    典型操作:INSERT、UPDATE、DELETE。

  1. 事务的隔离性是指 __。 答案参考:事务执行时不受其他事务干扰,数据中间状态对其他事务不可见。

  1. 创建新的数据库角色时,一般要完成的基本任务包括 __、__、__。 常见任务:定义角色名称、分配权限、关联用户。

  1. 使某个事务永远处于等待状态而得不到执行的现象称为 __。 答案参考死锁(或活锁)。

  1. 如果事务T1读取数据B=40,之后事务T2修改B=0并提交,T1再次读取B时会产生 __ 问题。
    答案参考不可重复读(前后两次读取结果不一致)。

  1. 以下操作序列中,若事务T1执行 X1=A+B+C(读A=50,读B=40,读C=100,写B=90),但最终验算 A+B+C≠190,说明存在 __故障。 答案参考事务内部逻辑错误(或系统故障导致数据不一致)。

第七章

选择题

第1题

题目:SQL Server 2012中的【 】工具可以启动SQL Server服务。
选项与解析

  • A)SSMS ❌ 管理工具但无法直接启停服务
  • B)配置工具 ✅ SQL Server Configuration Manager专用服务管理
  • C)性能工具 ❌ 用于监控而非服务控制
  • D)文档和帮助 ❌ 无关功能

第2题

题目:关于"实例"说法不正确的是【 】
选项与解析

  • A)不允许在一台计算机上安装多个实例 ✅ 错误说法(实际支持多实例)
  • B)一台计算机上只能有一个默认实例 ⚠️ 正确限制
  • C)默认实例名不可更改 ⚠️ 固定为MSSQLSERVER
  • D)实例即服务器 ⚠️ 正确描述

第3题

题目:直接访问和管理SQL Server的集成环境是【 】
选项与解析

  • A)查询编辑器 ❌ SSMS的子组件
  • B)SQL Server Management Studio ✅ 官方集成管理平台
  • C)模板资源管理器 ❌ SSMS辅助功能
  • D)Analysis Services ❌ 独立分析服务

第4题

题目:可编写T-SQL命令的工具是【 】
选项与解析

  • A)查询编辑器 ✅ SSMS的核心编辑界面
  • B)SSMS ❌ 包含查询编辑器但范围更广
  • C)模板资源管理器 ❌ 仅提供代码模板
  • D)Analysis Services ❌ 无关组件

第5题

题目:非系统自动生成的数据库是【 】
选项与解析

  • A)master ❌ 核心系统数据库
  • B)model ❌ 模板数据库
  • C)msdb ❌ 代理服务数据库
  • D)XSCJGL ✅ 明显是用户自定义数据库

第6题

题目:关于tempdb的错误说法是【 】
选项与解析

  • A)提供临时存储 ⚠️ 正确功能
  • B)关机时数据清除 ⚠️ 临时性特征
  • C)作为最终存放处 ✅ 严重错误(临时数据库不可持久化)
  • D)重启时重建 ⚠️ 标准行为

第7题

题目:批处理结束标记是【 】
选项与解析

  • A)End ❌ 非T-SQL语法
  • B)Return ❌ 用于存储过程返回
  • C)Exit ❌ 系统命令
  • D)Go ✅ 专用批处理分隔符

第8题

题目:正确的变量赋值语句是【 】
选项与解析

  • A)SET @a=10 ✅ 标准语法(@声明变量)
  • B)a=10 ❌ 缺少@符号
  • C)SET a=10 ❌ 变量名错误
  • D)SET a 10 ❌ 语法错误

第9题

题目:触发DDL触发器的命令是【 】
选项与解析

  • A)INSERT ❌ 触发DML触发器
  • B)DROP TABLE ✅ 典型DDL操作
  • C)UPDATE ❌ 触发DML触发器
  • D)DELETE ❌ 触发DML触发器

第10题

题目:INSERT操作的新记录存放在【 】
选项与解析

  • A)inserted表 ✅ 触发器专用逻辑表
  • B)deleted表 ❌ 存储删除数据
  • C)user表 ❌ 无此系统表
  • D)system表 ❌ 无关表

二、填空题

  1. SQL Server 2012 的默认实例名称为 __。
    答案参考MSSQLSERVER(不区分大小写)。

  2. __数据库是创建所有用户数据库和 __数据库的模板文件。 答案参考

  • 第一空:model
  • 第二空:tempdb(或系统数据库名称)。
  1. 局部变量必须先用 __ 命令声明后才可使用。 答案参考DECLARE(如 DECLARE @var INT)。

  2. __ 语句向客户程序返回信息。
    答案参考PRINTRAISERROR(根据上下文选择)。

  3. __ 是一个或多个 T-SQL 语句的集合,由编译器整体打包发送给 SQL Server 服务器进行编译,如果编译成功,该集合的所有语句都会执行,否则全都不执行。
    答案参考批处理(或 Batch)。

  4. 在 T-SQL 中,使用 __ 语句可以实现多分支控制结构,使用 __ 语句可以实现循环控制结构。 答案参考

    • 多分支:CASE...WHENIF...ELSE
    • 循环:WHILE
  5. __ 是一种数据库对象,是为了实现某个特定任务,将一组预编译的 SQL 语句以一个存储单元的形式存储在服务器上,供用户调用。 答案参考存储过程(或 Stored Procedure)。

  6. 执行存储过程的命令是 __。 答案参考EXECEXECUTE(如 EXEC sp_name)。

  7. 触发器可分为 __ 触发器和 __触发器两种。 答案参考

    • DML(数据操作语言触发器)
    • DDL(数据定义语言触发器)。
  8. SQL Server 2012 为 DML 触发器创建了 __和 __两个临时表。 答案参考

    • inserted(存储插入/更新的新数据)
    • deleted(存储删除/更新前的旧数据)。