数据库第一、二、三章课后习题答案_第1页
数据库第一、二、三章课后习题答案_第2页
数据库第一、二、三章课后习题答案_第3页
数据库第一、二、三章课后习题答案_第4页
数据库第一、二、三章课后习题答案_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

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

文档简介

第一章 习题 1 试述数据 数据库 数据库系统 数据库管理系统的概念 答 1 数据 Data 描述事物的符号记录称为数据 数据的种类有数字 文字 图形 图 像 声音 正文等 数据与其语义是不可分的 2 数据库 D 砒 aBase 简称 DB 数据库是长期储存在计算机内的 有组织的 可共享的 数据集合 数据库中的数据按一定的数据模型组织 描述和储存 具有较小的冗余度 较 高的数据独立性和易扩展性 并可为各种用户共享 3 数据库系统 DataBase Sytem 简称 DBS 数据库系统是指在计算机系统中引入数据库后 的系统构成 一般由数据库 数据库管理系统 及其开发工具 应用系统 数据库管理员 构成 4 数据库管理系统 DataBase Management Sytem 简称 DBMS 数据库管理系统是位于用 户与操作系统之间的一层数据管理软件 用于科学地组织和存储数据 高效地获取和维护 数据 DBMS 的主要功能包括数据定义功能 数据操纵功能 数据库的运行管理功能 数 据库的建立和维护功能 2 试述数据管理技术的发展过程 答 从数据管理的角度看 数据库技术到目前共经历了人工管理阶段 文件系统阶段和数 据库系统阶段 人工管理阶段数据管理特点 数据不保存 没有对数据进行管理的软件系统 没有文件的 概念 数据不具有独立性 文件系统阶段数据管理特点 数据可以长期保存 由文件系统管理数据 文件的形式已经 多样化 数据具有一定的独立性 数据库系统阶段数据管理特点 采用复杂的结构化的数据模型 较高的数据独立性 最低 的冗余度 数据控制功能 3 文件系统与数据库系统有什么区别和联系 答 文件系统和数据库系统之间的区别 1 文件系统用文件将数据长期保存在外存上 数据库系统用数据库统一存储数据 2 文件系统中的程序和数据有一定的联系 数据库系统中的程序和数据分离 3 文件系统用操作系统中的存取方法对数据进行管理 数据库系统用 DBMS 统一管理 和控制数据 4 文件系统实现以文件为单位的数据共享 数据库系统实现以记录和字段为单位的数 据共享 文件系统和数据库系统之间的联系 1 均为数据组织的管理技术 2 均由数据管理软件管理数据 程序与数据之间用存取方法进行转换 3 数据库系统是在文件系统的基础上发展而来的 4 数据独立性包括哪两个方面 含义分别是什么 答 数据独立性分为数据逻辑独立性与数据物理独立性两个方面 1 数据逻辑独立性 当模式改变时 由数据库管理员对各个外模式 模式映象作相应改变 可以使外模式保持不变 应用程序是依据数据的外模式编写的 从而应用程序不必修改 保证了数据与程序的逻辑独立性 简称为数据逻辑独立性 2 数据物理独立性 当数据库的存储结构等内模式改变了 由数据库管理员对模式 内模 式映象作相应改变 可以使模式保持不变 从而应用程序也不必改变 保证了数据与程序 的物理独立性 简称为数据物理独立性 5 试述数据库系统的特点 答 1 数据结构化数据库系统实现整体数据的结构化 这是数据库的主要特征之一 也是数据库系统与文件系统的本质区别 2 数据的共享性高 冗余度低 易扩充数据库的数据不再面向某个应用而是面向整个系 统 3 数据独立性高数据独立性包括数据的物理独立性和数据的逻辑独立性 4 数据由 DBMS 统一管理和控制数据库的共享是并发的共享 即多个用户可以同时存 取数据库中的数据甚至可以同时存取数据库中同一个数据 6 试述数据模型的概念 作用和组成部分 答 数据模型是按计算机系统的观点对数据建模 包括数据结构 数据操作 数据的约束 条件 7 试述实体 实体型 实体集 属性 码 域的概念 答 实体 客观存在并可以相互区分的事物叫实体 实体型 具有相同属性的实体具有相同的特征和性质 用实体名及其属性名集合来抽 象和刻画同类实体称为实体型 实体集 同型实体的集合称为实体集 属性 实体所具有的某一特性 一个实体可由若干个属性来刻画 码 唯一标识实体的属性集称为码 域 属性的取值范围 8 分别举出实体型之间具有一对一 一对多 多对多联系的例子 答 一对一 班级与班长之间的联系 一个班级只有一个正班长 一个班长只在一个班中任职 一对多 班级与学生之间的联系 一个班级中有若干名学生 每个学生只在一个班级中学习 多对多 课程与学生之间的联系 一门课程同时有若干个学生选修 一个学生可以同时选修多门课程 9 学校有若干个系 每个系有若干班级和教研室 每个教研室有若干教员 其 中有的教授和副教授每人各带若干研究生 每个班有若干学生 每个学生选修 若干课程 每门课程可由若干学生选修 用 E R 图画出该学校的概念模型 10 举出一个层次模型的实例 画出它的层次结构 给出它的一个数据库记录 A1B1C3C8C10B2C12D2D3D4C14 11 教师与课程之间的联系是多对多联系 试用层次模型表示之 教研室 属于 1 班 教 n 系 学校设置 1 课程 学生 拥有 选修 成绩 组 成 nn 1 nm n 研究生 属于 教师 1 n 1 n 1 教授 副教授 人数 12 举出一个网状模型的实例 要求三个记录型之间有多对多联系 它和三个记录型两两之 间的三个多对多联系等价吗 为什么 13 举出一个关系模型的实例 商店 商店编号 商店名 地址 职工 职工编号 姓名 性别 业绩 商店编号 聘期 月薪 商品 商品号 商品名 规格 单价 销售 商店编号 商品号 月销售量 14 试比较层次模型 网状模型和关系模型的优点与缺点 层次模型优点 结构清晰 固定结构性能好 完整性约束好 缺点 执行力差 插入 删 除时较复杂 与现实世界有出入 要查子女必须先查双亲 趋于程式化 网状模型优点 更符合现实世界 但越不符合 PC 世界 具有良好性能 存取效率高 缺点 结构复杂 不利于用户掌握 DDL DML 复杂 用户不易掌握使用 关系模型优点 建立在矩阵基础上 概念单一 用户易懂易用 具有更高的数据独立性 更好的安全保密性 缺点 查询效率不比格式化数据模型 海量数据的处理很难 15 试述数据库系统的三级模式结构 这种结构的优点是什么 答 数据库系统的三级模式结构由外模式 模式和内模式组成 外模式 亦称子模式或用 户模式 是数据库用户能够看见和使用的局部数据的逻辑结构和特征的描述 是数据库用 户的数据视图 是与某一应用有关的数据的逻辑表示 模式 亦称逻辑模式 是数据库中 全体数据的逻辑结构和特征的描述 是所有用户的公共数据视图 模式描述的是数据的全 局逻辑结构 外模式涉及的是数据的局部逻辑结构 通常是模式的子集 内模式 亦称存 储模式 是数据在数据库系统内部的表示 即对数据的物理结构和存储方式的描述 数 据库系统的三级模式是对数据的三个抽象级别 它把数据的具体组织留给 DBMS 管理 使 用户能逻辑抽象地处理数据 而不必关心数据在计算机中的表示和存储 为了能够在内部 实现这三个抽象层次的联系和转换 数据库系统在这三级模式之间提供了两层映像 外模 式 模式映像和模式 内模式映像 正是这两层映像保证了数据库系统中的数据能够具有较 高的逻辑独立性和物理独立性 16 从用户角度看 数据库系统都有哪些体系结构 答 从用户角度看 数据库系统的结构分为单用户结构 主从式结构 分布式结构 客户 服务器 浏览器 应用服务器 数据库服务器多层结构 这是数据库外部体系结构 物理存储结构 逻辑存储结构 内存结构和实例进程结构 这是内部体系结构 17 数据库管理系统有哪些主要功能 答 数据库定义功能 数据存取功能 数据库运行管理 数据库的建立和维护功能 18 数据库管理系统通常由哪几部分组成 答 数据库系统 DBS Data Base System 简称 DBS 通常由软件 数据库和数据管理员组 成 其软件主要包括操作系统 各种宿主语言 实用程序以及数据库管理系统 数据库由 数据库管理系统统一管理 数据的插入 修改和检索均要通过数据库管理系统进行 数据 管理员负责创建 监控和维护整个数据库 使数据能被任何有权使用的人有效使用 数据 库管理员一般是由业务水平较高 资历较深的人员担任 19 数据库管理系统的工作过程是什么 答 DBMS 首先进行语法检查 而后找到对应的外模式 再时进行权限检查 DBMS 根据找到的模式 利用概念模式 外模式映像 将其映像到概念模式 确定概念模式 应该读入哪些数据 DBMS 利用内模式 概念模式映像 将概念模式映像到内模式 确定数据库应读入哪些物理 记录及其具体地址 DBMS 根据地址信息向操作系统发出读取记录的命令 操作系统执行读取数据的命令 并将数据从硬盘读系统缓冲区 将执行结果通知 DBMS DBMS 将系统缓冲区的数据转换成用户所需的记录格式 DBMS 将数据记录从系统缓冲区传送到用户工作区 20 数据库管理系统常用的实现方法有哪些 答 一般有四类实现 DBMS 的方法 DBMS 与应用程序融合在一起 称为 N 方案 一个 DBMS 进程对应一个用户进程 成为 2N 方案 多个 DBMS 进程对应多个用户进程 称为 M N 方案 一个 DBMS 进程对应所有用户进程 成为 N 1 方案 21 试述数据库设计的步骤 答 按照规范化设计方法 从数据库应用系统设计和开发的全过程来考虑 将数据库及其 应用软件系统的生命周期的三个时期又可以细分为六个阶段 需求分析 概念结构设计 逻辑结构设计 物理结构设计 实施及运行维护 22 DBA 的主要职责是什么 答 数据库管理员 DBA 负责全面和控制数据库系统 其主要职责有 设计与定义数据库 系统 帮助最终用户使用数据库系统 监督与控制数据库系统的使用和运行 转储与恢复 数据库 改进和重组数据库系统 调优数据库系统的性能 重构数据库 第二章 习题 1 常用的关系数据语言有哪几种 答 基于关系代数的语言 基于谓词演算的语言 结构化查询语言 2 解释下列概念 并说明它们之间的联系与区别 1 码 候选码 外部码 2 笛卡尔 关系 元组 属性 域 3 关系模式 关系模型 关系数据库 答 1 码 唯一标识实体的属性组 码可能不止一个 候选码 同类关系中能够唯一标 识每个元组的属性组 在这些关系中 这个属性组上的值每行都不同 外部码 设 F 是基 本关系 R 的一个或一组属性 但不是关系 R 的码 如果 F 与基本关系 S 的主码 Ks 相对 应 则称 F 是基本关系 R 的外码 并称基本关系 R 为参照关系 基本关系 S 为被参照关系 或目标关 外码不一定与相应的主码同名 2 笛卡尔 关系 元组 属性 域 笛卡尔积 给定一组域 D1 D2 Dn 这些域中可以有相同的 D1 D2 Dn 的 笛卡尔积为 D1 D2 Dn d1 d2 dn di Di i 1 2 n 所有 域的所有取值的一个组合不能重复 笛卡尔积可以表示为一个二维表 关系 D1 D2 Dn 的子集叫做在域 D1 D2 Dn 上的关系 用 R D1 D2 Dn 表示 这里 R 是关系的名字 n 是关系的目或度 关系中的每个元素是关系中 的元组 通常用 t 表示 当 n 1 时 称该关系为单元关系 当 n 2 时 称该关系为二元 关系 关系是 n 个域的笛卡尔积的子集 也是一个二维表 元组 关系中的每个元素是关系中的元组 属性 实体具有的某一方面的特性 域 一组具有相同数据类型的值的集合 关系是一张二维表 表的每行对应一个元组 表的每列对应一个域 由于域可以相同 为 了加以区分 给每列取一个名字 称为属性 n 目关系必有 n 个属性 3 关系模型由关系数据结构 关系操作集合和关系完整性约束三部分组成 在用户观点 下 关系模型中数据的逻辑结构是一张二维表 它由行和列组成 1 关系 一个关系对应通常说的一张表 2 属性 表中的一列即为一个属性 3 域 属性的取值范围 4 元组 表中的一行即为一个元组 5 主码 表中的某个属性组 它可以唯一确定一个元祖 6 分量 元组中的一个属性值 7 关系模式 对关系的描述 一般表示为关系名 属性 1 属性 2 属性 n 3 关系模型的完整性规则有哪几类 答 关系模型提供了 3 类完整性规则 实体完整性 参照完整性 用户定义的完整性规则 其中实体完整性规则和参照完整性规则是关系模型必须满足的完整性约束条件 成为关系 完整性规则 实体完整性规则 作为主键的属性或属性组的值在关系中必须是唯一的和确定的 参照完整性规则 如果表中存在外键 则外键的值必须与主表中相应的键值相同 或者外 键的值为空 上述两类完整性规则是关系模型必须满足的规则 由系统自动支持 用户定义的完整性规则是针对某一具体数据的约束条件 由应用环境决定 它反映某一具 体应用所涉及的数据必须满足的语义要求 4 在关系模型的参照完整性规则中 为什么外部码属性的值也可以为空 什么情况下才可 以为空 答 关系模型的完整性规则是对关系的某种约束条件 关系模型中有三类完整性约束 实 体完整性 参照完整性和用户定义完整性 参照完整性规则中 外码或者取空值 其中每个属性值均为空值 或者等于 S 中某个元 组的主码值 因此外码属性值可以为空 若属性 F 本身不是主属性 则可以取空值 否则 不能取空值 5 等值连接与自然连接的区别是什么 答 连接运算符是 的连接运算称为等值连接 它是从关系 R 与 S 的广义笛卡尔积中选 取 A B 属性值相等的那些元组 自然连接是一种特殊的等值连接 它要求两个关系中进行比较的分量必须是相同的属性组 并且在结果中把重复的属性列去掉 6 关系代数的基本运算有哪些 如何用这些基本运算来表示其他的关系基本运算 答 并 差 笛卡尔积 投影和选择 5 种运算为基本的运算 其他 3 种运算 即交 连接 和除 均可以用这 5 种基本运算来表达 7 设有下列四个关系模式 S SNO SNAME CITY P PNO PNAME COLOR WEIGHT J JNO JNAME CITY SPJ SNO PNO JNO QTY 试分别用关系代数 ALPHA 语言 QBE 语言完成下列操作 1 求供应工程 J1 零件的供应商号码 SNO SELECT DISTINCT SNO FROM SPJ WHERE JNO J1 2 求供应工程 J1 零件 P1 的供应商号码 SNO SELECT DISTINCT SNO FROM SPJ WHERE JNO J1 AND PNO P1 3 求供应工程 J1 零件为红色的供应商号码 SNO select distinct sno from p spj where jno J1 and color 红 and p pno spj pno 或者 SELECT SNO FROM SPJ P WHERE JNO J1 AND SPJ PNO P PNO AND COLOR 红 以上二选一即可 4 求没有使用天津供应商生产的红色零件的工程项目代码 JNO select jno from j where jno not in select jno from s p spj where city 天津 and color 红 and spj pno p pno and spj sno s sno 或者 SELECT JNO FROM J WHERE NOT EXISTS SELECT JNO FROM SPJ WHERE SPJ JNO J JNO AND SNO IN SELECT SNO FROM S WHERE CITY 天津 AND PNO IN SELECT PNO FROM P WHERE COLOR 红 以上二选一 5 求至少用了供应商 S1 所供应的全部零件的工程项目代码 JNO SELECT DISTINCT JNO FROM SPJ SPJ1 WHERE NOT EXISTS SELECT SNO FROM SPJ SPJ2 WHERE SNO S1 AND NOT EXISTS SELECT SNO FROM SPJ SPJ3 WHERE SPJ3 JNO SPJ1 JNO AND SPJ3 PNO SPJ2 PNO 8 关系系统可以分为哪几类 各类关系系统的定义是什么 关系系统的定义 一个系统可以定义为关系系统 当且仅当它支持如下条件时才可以 1 关系数据结构 也就是说 从用户观点看 数据库是由表构成的 并且系统中只有表 这种结构 2 选择 投影和 自然 连接运算 对这些运算不要求用户定义任何事物理存取路径 关系系统可分为以下几类 1 表式系统 这类系统仅支持关系数据结构 即表 不支持集合级的操作 表式系统实际上不能算关系 系统 倒排表列 Inverted list 系统属于这一类 2 最小 关系系统 这类关系是上面定义的关系系统 它支持关系数据结构和选择 投影 连接三种关系操作 许多微机关系系统如 FoxBASE FoxPro 等属于这一类 3 关系完备的系统 这类系统支持关系数据结构和所有的关系代数操作 功能上与关系代数等价 目前许多大 中型关系系统 如 DB2 ORACLE 等属于这一类 4 全关系系统 这类系统支持关系模型的所有特征 特别是数据结构中域的概念 实体完整性和参照完整 性 虽然 DB2 ORACLE 等系统已经接近这个目标 但到目前为止尚没有一个系统是全关系 系统 第三章 习题 1 SQL 语言有什么特点 答 SQL 语言集数据查询 data control 数据操纵 data manipulation 数据定义 data definition 和数据控制 data control 功能于一体 充分体现了关系数据语言的特点和优 点 其主要特点包括 1 综合统一 2 高度非过程化 3 面向集合的操作方式 4 以同一种语法结构提供两种使用 方式 5 语言简洁 易学易用 2 用 SQL 语言建立第 2 章第 7 题中的四个表 答 表 1 其中供应商表 S 由供应商号 SNO 供应商姓名 SNAME 供应商所在城市 CITY 组成 记录各个供应商的情况 P64 解 CREATE TABLE S SNO CHAR 2 UNIQUE SNAME CHAR 6 CITY CHAR 4 表 2 零件表 P 由零件号 PNO 零件名称 PNAME 零件颜色 COLOR 零件重量 WEIGHT 组成 记录各种零件的情况 解 CREATE TABLE P PNO CHAR 2 UNIQUE PNAME CHAR 6 COLOR CHAR 2 WEIGHT INT 2 表 3 工程向目表 J 由项目号 JNO 项目名 JNAME 项目所在城市 CITY 组成 记 录各个工程项目的情况 解 CREATE TABLE J JNO CHAR 2 UNIQUE JNAME CHAR 8 CITY CHAR 4 表 4 供应情况表 SPJ 由供应商号 SNO 零件号 PNO 项目号 JNO 供应数量 QTY 组成 记录各供应商供应各种零件给各工程项目的数量 解 CRATE TABLE SPJ SNO CHAR 2 PNO CHAR 2 JNO CHAR 2 QTY NVARCHAR 2 4 针对第 2 题创建的表 用 SQL 语言进行下列各项操作 1 统计每种零件的供应总量 select pno sum qty from spj group by pno 2 求零件供应总量在 1000 种以上的供应商名字 select s sname from s where s sno in select spj sno from spj group by spj sno having sum qty 1000 3 在 S 表中插入一条供应商信息 S6 华天 深圳 insert into s values S6 华天 深圳 4 把全部红色零件的颜色改为粉红色 alter table p alter column color char 6 update p set color 粉红 where color 红 5 将 S2 供应给 J1 的零件 P1 改为由 P2 供给 update spj set pno P2 where sno S2 and jno J1 and pno P1 6 删去全部蓝色零件及相应的 SPJ 记录 delete from spj where pno in select pno from p where color 蓝 以上连敲否则每题末尾加 5 视图有什么优点 视图的优点主要表现在以下几点 1 视点集中 试图集中即是使用户关心它感兴趣的某些特定数据和他们所负责的特定任 务 这样通过只允许用户看到视图中所定义的数据而不是试图引用表中的数据而提高了数 据的安全性 2 简化操作 视图大大简化了用户对数据的操作 因为在定义视图时 若试图本身就是 一个复杂查询的结果集 这样在每一次执行相同的查询时 不必重新写这些复杂的查询语 句 只要一条简单的查询视图语句即可 可见视图向用户隐藏了表与表之间的复杂的连接 操作 3 定制数据 视图能够实现让不同的用户以不同的方式看到不同或相同的数据集 因此 当有许多不同水平的用户共用同一数据库时 这显得极为重要 4 合并分割数据 在有些情况下 由于表中数据量太大 故在表的设计时常将表进行水 平分割或垂直分割 但表的结构的变化却对应用程序产生不良的影响 如果使用视图就可 以重新保持原有的结构关系 从而使外模式保持不变 原有的应用程序仍可以通过视图重 载数据 5 安全性 视图可以作为一种安全机制 通过视图用户只能查看和修改他们所能看到的 数据 其它数据库或表既不可见也不可以访问 如果某一用户想要访问视图的结果集 必 须授予其访问权限 视图所引用表的访问权限与视图权限的设置互不影响 6 在上面各表的基础上创建下列视图 VSJ 它记录了给 三建 工程项目的供应灵感见的情 况 包括供应商号 零件号和零件数量 并对该视图查询 S1 供应商的供货情况 创建 VSJ 视图 CREATE VIEW SANJAN SPJ AS SELECT SNO PNO QTY FROM SPJ J WHERE S

温馨提示

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

评论

0/150

提交评论