第七章习题及解答 P179-181
一、 复习题
1、关系模型由哪三部分组成?
关系模型的概念是建立在实体——关系方法基础上的。数据模型通常由数据结构、数据操作和完整性约束三部分组成。(P168)
2、关系的完整性分为哪三类?
关系数据模型的操作必须满足关系的完整性约束条件。完整性是指数据的精确性和可靠性。完整性约束是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入/输出造成无效操作或错误信息而提出的。数据完整性分为四类:实体完整性、域完整性、参照完整性、用户定义的完整性。(P171)
3、在参照完整性中,为什么外码的属性值也可以为空?什么时候可以为空? (P171)
参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码Ks相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:
1) 或者取空值(F的每个属性值均为空值) 2) 或者等于S中某个元组的主码值。 3. 用户定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。
在参照完整性中,外码属性值可以为空,它表示该属性的值尚未确定,但前提条件是该外码属性不是其所在参照关系的主属性。
4、试分析数据库管理系统与数据库内涵的区别。 (P165)
数据管理是指对数据的组织、编码、分类、存储、检索和维护。它是数据处理的中心问题。数据管理方法根据数据管理的特点,其发展可划分为3个阶段:人工管理阶段、文件管理阶段、数据库系统阶段。
数据库是数据管理的方式之一,数据管理的内涵更加宽。
5、试分析数据库的主要模型 (P166)
数据库模型定义了数据的逻辑设计,它也描述了不同数据之间的联系。在数据库设计发展中,曾使用过三种数据库模型:层次模型、网络模型和关系模型。
(1)层次模型
层次模型比较简单;对于实体间关系是固定的,且预先定义好的应用系统,采用层次模型来实现,其性能优于关系模型,不低于网状模型;层次数据模型还提供了良好的完整性支持。但是现实世界中很多联系是非层次性的,如多对多联系、一个节点具有多个双亲等,层次模型表示这类联系的方法很笨拙。
(2)网状模型
网状数据模型能够更为直接地描述现实世界,具有良好的性能,存取效率较高。层次模型可以看作是网状模型的一个特例。但网状数据模型结构比较复杂,不容易使用和实现。
(3) 关系模型
关系模型是目前最重要的一种数据模型。关系模型中,数据组织成称之为关系的二维表,这里没有任何层次或网络结构强加于数据上。但表或关系相互关联。
关系数据模型数据结构简单、清晰,用户易懂易用。具有较高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。所以,关系数据模型诞生以后发展迅速,深受用户的喜爱。
关系模型最主要的缺点是查询效率往往不如非关系数据模型。因此为了提高性能,必须对用户的查询请求进行优化,增加了开发数据库关联系统的难度。
6、试述数据字典的作用 (P167)
数据字典实际上是管理数据库用的内部数据库。是为了便于管理数据库中的各种数据、对象及相互的约束关系而设计的工具,比如用户的权限、操作记录等相关情况和数据库中各种对象的变化情况等。系统的数据字典通常不允许用户直接访问,而是由DBMS自动管理维护,DBA有一定的权限对其进行人工维护。
数据字典应用扩展后,用户为了统一数据的描述,便于实现约束等也可以定义用户数据字典,用户数据字典中通常定义用户数据的格式等内容。用户定义的数据字典,用户可以进行访问和维护。
7、试述SQL的特点 (P172)
SQL语言功能强大,语法简单,按用途分为三类:
?DML(Data Manipulation Language 数据操作语言) 用于查询、修改或者删除数据 ?DDL(Data Definition Language 数据定义语言) 用于定义数据的结构,例如创建数据库中的表、视图、索引等
?DCL(Data Control Language 数据控制语言) 用来授予或收回访问数据库的某种特权、控制数据操纵事务的发生时间及效果、对数据库进行监视
SQL是非过程化语言。一次处理一批记录,并对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集。所有SQL语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。SQL不要求用户指定对数据的存放方法。这种特性使用户更易集中精力于要得到的结果。所有SQL语句使用查询优化器,它是关系数据库管理系统的一部分,由它决定对指定数据存取的最快速度的手段。查询优化器知道存在什么索引,哪儿使用合适,而用户从不需要知道表是否有索引,表有什么类型的索引。
SQL是统一的语言。SQL可用于所有用户的数据库活动模型,包括系统管理员、数据库管理员、应用程序员、决策支持系统人员及许多其他类型的终端用户。基本的SQL命令只需很少时间就能学会,最高级的命令在几天内便可掌握。
SQL为许多任务提供了命令,包括: ? 查询数据
? 在表中插入、修改和删除记录 ? 建立、修改和删除数据对象
? 控制对数据和数据对象的存取 ? 保证数据库一致性和完整性
以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。
SQL是所有关系数据库的公共语言。由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个关系数据库管理系统转到另一个。所有用标准SQL编写的程序都是可以移植的。
8、 试述数据库管理员的作用 (P165)
数据库管理员(DataBase Administrator,简称DBA)是专门完成数据库的建立、使用和维护等工作的人员。
9、什么是数据仓库?它的主要应用是什么? (P174)
数据仓库是建立在传统事务型数据库的基础之上,为决策支持系统及数据挖掘系统提供数据源。数据仓库与传统数据库的最根本区别在于其侧重点的不同。数据处理分为事务型处理和分析型处理。事务型处理以传统数据库系统为中心进行日常的业务处理;分析型处理以数据仓库为中心分析数据内在的关联和规律,为决策提供可靠、有效的依据。
数据仓库是在传统数据库的基础上发展起来的,建立在异构的业务数据库基础上。如果仅从存储数据的角度看,数据仓库与传统的数据库没有本质的差别。
数据仓库是面向主题的、集成的、不可修改的且随时间变化的数据集合,以支持管理人员的决策。
数据仓库的核心是在系统中保留最有可能被用户使用的数据。
10、什么是数据挖掘?简述其基本过程。 (P175~178)
数据挖掘本质上是一种深层次的数据分析方法。因此,数据挖掘可以描述为按既定目标,对大量的数据进行探索和分析,揭示隐藏的、未知的或验证已知的规律,并且进一步将其模型化的有效方法。
数据挖掘的基本过程主要分为四个阶段:数据准备、数据挖掘、模式评价和知识运用。 第一步:数据准备
数据挖掘的处理对象是海量数据,先确定要分析的对象,这个阶段包括数据收集过滤及录入、数据预处理和数据分析及建模。通过对数据的处理,对数据进行处理和优化,并对已有的数据进行分析,将数据转换成分析模型,分析模型是针对挖掘算法建立的,建立适合挖掘算法的分析模型是成功的关键之一。
第二步:数据挖掘
数据挖掘是最为关键的一个步骤。根据挖掘的目标,选用相关模型,运用统计分析、规则归纳等主要技术,运用关联规则、分类、回归分析等常用的分析方法,使用一定的算法进行计算,得出具体的关联模式。
第三步:模式评价
经过前面的步骤得到的模式,需要根据实际情况进行评估,确定其是否有效或某些部分有效;并且大部分模式是用数学的表达式表示,并不直观,比较难于理解,这时通常会结合可视化技术来展现得到的结果,可视化技术的好处就是将得到的结果直观的展示出来,有助
于直接发现具体关联,得到有用知识。
第四步:知识运用
发现知识的目的是为了运用。运用知识主要有两种途径:其一是需要看知识本身描述的关系或结果,可以对决策提供支持;其二是要求对新的数据运用知识,由此可能产生新的问题,并需要对知识做进一步优化。
数据挖掘过程可能需要多次的循环,如果其间某个步骤与预期目标不符,则需要回溯到前面的步骤,重新调整和执行。
二、 练习题
(一)填空题
1、数据库技术是一种运用计算机长期管理大量数据的方法,它研究如何_____和_______数据,如何高效地获取和处理数据。数据管理是指对数据的_____、_____、_____、存储、_____和维护。它是数据处理的中心问题。数据管理方法根据数据管理的特点,其发展可划分为__________、__________和__________3个阶段。
组织 存储 组织 编码 分类 存储 检索 人工管理 文件管理 数据库系统 (P162-165) 2、关系模型的操作必须满足完整性约束条件,他们可以分为____________、____________、____________、____________四类约束。
实体完整性、域完整性、参照完整性、用户定义的完整性 (P171) 3、SQL设计巧妙、语言简捷,完成核心功能只用了9个动词,它的英文全称是___________。 Structured Query Language (P 171)
4、模型按应用不同,可分为两类,一类是__________,也称信息模型,它是按用户的观点来对数据和信息建模,主要用于数据库设计。另一类是数据模型,主要包括__________、__________、__________等。
概念模型 网状模型 层次模型 关系模型 (P166)
5、概念模型涉及到的概念主要有__________、__________、__________、__________和__________。
实体 属性 键 域 关系 (P169)
6、以关系模型为基础实现的数据库系统称为__________。目前应用最广泛的几种数据库都是关系型数据库,包括大型的__________、__________、__________等和小型的__________、__________等。
关系数据库 Oracle、SQL Server、DB2 Access、Foxpro (P168)
7、数据字典实际上是管理数据库的内部数据库,通常由____________自动管理维护,________有也一定权限对其进行维护。 DBMS DBA (P167)
8、SQL 功能强大,按用途可将其语句分为______________________________等几类。 DML、DDL、DCL(P172)
(二)选择题
1、在现实世界中,事物内部以及事物之间是有联系的,这些联系包括____________。 A、一对一联系 B、一对多联系 C、多对多联系 D、零对多联系
A B C (P170)
2、层次模型的优点主要有_________________。 A、层次数据模型本身比较简单; B、对于实体间联系是固定的,且预先定义好的应用系统,性能较好;
C、层次数据模型提供了良好的完整性支持。 D、层次数据模型的善于表示多对多的关系。 A B C (P166)
3、下列是网状模型缺点的是____________。 A (P166) A、结构比较复杂,不利于最终用户掌握; B、数据定义和数据操作复杂,不易使用 C、由于记录之间联系时通过存取路径实现,应用程序的负担较重。 D、对插入和删除操作的限制比较多。
4、建立数据表的SQL关键词为:____________ A、CREATE TABLE B、CREATE VIEW C、CREATE INDEX D、ALTER TABLE
A (P173)
5、微型计算机中使用的关系数据库,就应用领域而言属于___________。 A、数据处理 B、科学计算 C、实时控制 D、计算机辅助设计 A(P163)
6、为了防止一个用户的工作不适当地影响另一个用户,应该采取___________。 A、完整性控制 B、访问控制 C、安全性控制 D、并发控制
D (P164)
7、DBMS普遍采用________方法来保证调度的正确性。 A、索引 B、授权 C、封锁 D、日志 C
8、数据库系统的核心是______。 A、数据模型 B、数据库管理系统 C、软件工具 D、数据库
B (P163)
9、下列叙述中正确的是______。 A、数据库是一个独立的系统,不需要操作系统的支持 B、数据库设计是指设计数据库管理系统 C、数据库技术的根本目标是要解决数据共享的问题