文档库 最新最全的文档下载
当前位置:文档库 › 数据库基础教程课后习题答案顾韵华

数据库基础教程课后习题答案顾韵华

数据库基础教程课后习题答案顾韵华
数据库基础教程课后习题答案顾韵华

习题1

1、简述数据库系统的特点。

答:数据库系统的特点有:

1)数据结构化

在数据库系统中,采用统一的数据模型,将整个组织的数据组织为一个整体;数据不再仅面向特定应用,而是面向全组织的;不仅数据内部是结构化的,而且整体是结构化的,能较好地反映现实世界中各实体间的联系。这种整体结构化有利于实现数据共享,保证数据和应用程序之间的独立性。

2)数据共享性高、冗余度低、易于扩充

数据库中的数据能够被多个用户、多个应用程序共享。数据库中相同的数据不会多次重复出现,数据冗余度降低,并可避免由于数据冗余度大而带来的数据冲突问题。同时,当应用需求发生改变或增加时,只需重新选择不同的子集,或增加数据即可满足。

3)数据独立性高

数据独立性是由DBMS 的二级映像功能来保证的。数据独立于应用程序,降低了应用程序的维护成本。

4)数据统一管理与控制

数据库中的数据由数据库管理系统(DBMS )统一管理与控制,应用程序对数据的访问均经由DBMS 。DBMS 提供四个方面的数据控制功能:并发访问控制、数据完整性、数据安全性保护、数据库恢复。

2、什么是数据库系统?

答:在计算机系统上引入数据库技术就构成一个数据库系统(DataBase System ,DBS )。数据库系统是指带有数据库并利用数据库技术进行数据管理的计算机系统。DBS 有两个基本要素:一是DBS 首先是一个计算机系统;二是该系统的目标是存储数据并支持用户查询和更新所需要的数据。

3、简述数据库系统的组成。

答:数据库系统一般由数据库、数据库管理系统(及其开发工具)、数据库管理员(DataBase Administrator ,DBA )和用户组成。

4、试述数据库系统的三级模式结构。这种结构的优点是什么?

答:数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成,同时包含了二级映像,即外模式/模式映像、模式/内模式映像,如下图所示。 数据库应用1……

外模式A 外模式B 模式

应用2应用3应用4应用5……

模式

外模式/模式映像

模式/内模式映像

数据库系统的这种结构具有以下优点:

(1)保证数据独立性。将外模式与模式分开,保证了数据的逻辑独立性;将内模式与模式分开,保证了数据的物理独立性。

(2)有利于数据共享,减少了数据冗余。

(3)有利于数据的安全性。不同的用户在各自的外模式下根据要求操作数据,只能对

限定的数据进行操作。

(4)简化了用户接口。按照外模式编写应用程序或输入命令,而不需了解数据库全局逻辑结构和内部存储结构,方便用户系统。

5、什么是数据的物理独立性与逻辑独立性?并说明其重要性。

答:(1)数据的物理独立性是指数据的物理结构(包括存储结构、存取方式等)的改变,存储设备的更换,物理存储的更换,存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。

(2)数据的逻辑独立性是指数据库总体逻辑结构的改变,如修改数据模式,增加新的数据类型、改变数据间联系等,不需要相应修改应用程序。

(3)数据的独立性使得数据库中数据独立于应用程序而不依赖于应用程序,也就是说数据的逻辑结构、存储结构与存取方式的改变不影响应用程序。相应的,数据的独立性也使得应用程序的编制不再依赖于数据的物理和逻辑结构,提高了应用程序的可移植性与鲁棒性。从理论上说,数据的独立性可以使数据的组织和应用程序的编制完全分离。

6、数据库管理系统的功能主要有哪几方面?

答:数据库管理系统的主要功能包括以下几个方面:

(1)有效地组织、存取和维护数据。

(2)数据定义功能。DBMS通过数据定义语言(Data Definition Language,DDL)定义数据库的各类数据对象,包括数据的结构、数据约束条件等。

(3)数据操纵功能。DBMS提供数据操纵语言(Data Manipulation Language,DML),用户使用DML实现对数据库中的数据进行查询、增加、删除和修改等操作。

(4)数据库的事务管理和运行管理。DBMS提供数据控制语言(Data Control Language,DCL),数据库管理员使用DCL实现对数据库的安全性保护、完整性检查、并发控制、数据库恢复等数据库控制功能。

(5)数据库的建立和维护功能。

(6)其他功能。包括:数据库初始数据输入与转换、数据库转储、数据库重组、数据库性能监视与分析、数据通信等,这些功能通常由DBMS提供的实用程序或管理工具完成。

7、数据库系统的人员主要包括哪些?

答:数据库系统的人员主要包括:数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。

8、什么是数据模型?

答:数据模型(Data Model)是一种抽象模型,是对现实世界数据特征的抽象。

9、什么是概念模型?E-R模型的三要素是什么?

答:概念模型是面向用户的模型,是现实世界到机器世界的一个中间层次。其基本特征是按用户观点对信息进行建模。概念模型是现实世界到信息世界的抽象,是数据库设计人员与用户进行交流的工具。

E-R模型的三要素为:

(1)实体(entity)

实体是指客观存在并可相互区别的事物。实体可以是人、事或物,也可以是抽象的概念。例如:一件商品、一个客户、一份订单等都是实体。

(2)属性(attribute)

实体通常由若干特征,每个特征称为实体的一个属性。属性刻画了实体在某方面的特性。例如:商品实体的属性可以有商品编号、商品类别、商品名称、生产商等。

(3)联系(relationship)

现实世界中事物之间的联系反映在E-R模型中就是实体间的联系。例如,订单就是客

户和商品之间的联系。

10、举例说明联系的三种类型。

答:一对一联系(1:1):如果对于实体集A中的任一实体,在实体集B中至多有一个实体与之联系;反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。例如:在公司中,一个部门只有一个经理,而一个经理只在一个部门任职,则部门与经理之间具有一对一联系。

一对多联系(1:n):如果对于实体集A中的任一实体,在实体集B中有n(n≥1)个实体与之联系;而对于实体集B中的每一个实体,实体集A中至多有一个实体与之联系,则称实体集A与实体集B具有一对多联系,记为1:n。例如:在公司中,一个部门可有多个职工,而一个职工只在一个部门任职,则部门与职工之间具有一对多联系。

多对多联系(m:n):如果对于实体集A中的任一实体,在实体集B中有n(n≥1)个实体与之联系;而对于实体集B中的每一个实体,实体集A中有m(m≥1)个实体与之联系,则称实体集A与实体集B具有多对多联系,记为m:n。例如:在商品订购中,一个客户可订购多种商品,而一种商品也可被多个客户订购,则客户与商品之间具有多对多联系。

11、什么是逻辑数据模型?逻辑数据模型的三要素是什么?

答:逻辑数据模型是数据库管理系统呈现给用户的数据模型,即用户从数据库中看到的数据组织形式。逻辑数据模型的三要素为:

(1)数据结构

数据结构是对系统静态特性的描述,主要描述数据库组成对象以及对象之间的联系。数据结构是刻画数据模型最重要的方面。因此在数据库系统中,通常按照其数据结构的类型来命名数据模型。主要的数据模型有层次模型、网状模型和关系模型。

(2)数据操作

数据操作指对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则,它是对数据库动态特性的描述。数据库中的数据操作主要分为查询、更新两大类,其中数据更新主要是指对数据记录的增、删、改。数据模型需要定义这些操作的语义、操作符号、操作规则及实现操作的相关语句。

(3)完整性约束

完整性约束是指对数据的一组完整性规则的集合。完整性规则是给定的数据模型中数据及其联系所具有的制约和存储规则,用以限定符合数据模型的数据库状态以及状态的变化,保证数据的正确、有效、相容。

12、简述关系模型的特点。

答:关系模型主要有以下特点:

(1)关系模型建立在严格的数学基础之上。

(2)数据结构简单清晰,用户易懂易用。关系模型的数据结构虽然简单,但却能表达丰富的语义,能够较好地描述现实世界的实体以及实体间的各种联系。

(3)数据物理存取路径对用户是透明的,有更高的数据独立性、更好的数据安全性。

习题2

1、解释以下术语:关系、元组、属性、码、域、分量、关系模式。

答:(1)关系:一个关系(relation)指一张二维表。

(2)元组:一个元组(tuple)指二维表中的一行。

(3)属性:一个属性(attribute)二维表中的一列,表中每列均有名称,即属性名。

(4)码:码(key)也称为键、关键字、关键码,指表中可惟一确定元组的属性或属性

组合。

(5)域:域(domain)指属性的取值范围。

(6)分量:分量指元组中的一个属性值。

(7)关系模式:关系模式是对关系“型”的描述,通常表示为:关系名(属性1,…,属性n)。

2、解释关系数据库的“型”和“值”。

答:关系数据库的型即关系数据库模式,是对关系数据库结构的描述。关系数据库模式包括若干域的定义以及在这些域上定义的若干关系模式。通常以关系数据库中包含的所有关系模式的集合来表示关系数据库模式。关系数据库的值是由关系数据库模式中的各关系模式在某一时刻对应的关系的集合。

3、解释空值的含义。

答:在关系元组中允许出现空值,空值表示信息的空缺,即未知的值或不存在值。

4、候选码应满足哪两个性质?

答:候选码应满足惟一性和最小性两个性质:

(1)惟一性。对关系R的任两个元组,其在属性集K上的值是不同的。

(2)最小性。属性集K=(A i,A j,…,A k)是最小集,即若删除K中的任一属性,K 都不满足最小性。

5、关系操作的特点是什么?

答:关系操作的特点是集合操作,即操作的对象和结果都是关系。

6、基本的关系操作包括哪些?

答:关系模型的基本操作包括查询和更新两大类:

(1)数据查询操作用于对关系数据进行各种检索。它是一个数据库最基本的功能,通过查询,用户可以访问关系数据库中的数据。查询可以在一个关系内进行,也可以在多个关系间进行。关系查询的基本单位是元组分量,查询即定位符合条件的元组。

(2)数据更新操作操作包括插入、删除和修改三种。数据删除的基本单位为元组,其功能是将指定关系内的指定元组删除。数据插入的功能在指定关系中插入一个或多个元组。数据修改实在一个关系中修改指定的元组属性值。

7、关系代数的运算主要包含哪些?

答:关系代数的运算可分为两类:

(1)传统的集合运算。其运算是以元组作为集合中元素来进行的,从关系的“水平”方向即行的角度进行。包括并、差、交和笛卡尔积。

(2)专门的关系运算。其运算不仅涉及行,也涉及列。这类运算是为数据库的应用而引进的特殊运算,包括选择、投影、连接和除法等。

8、什么是数据完整性?如何实现数据完整性?试述关系完整性规则。

答:数据完整性是指数据库中的数据在逻辑上的正确性、有效性和相容性。

数据完整性是通过定义一系列完整性约束条件,由DBMS负责检查约束条件来实现的。

关系模型有三类完整性约束规则:实体完整性、参照完整性和用户定义的完整性。

9、有如下的学生成绩数据库:

Student(学号,姓名,专业名,性别,出生时间,总学分,备注)。

Course(课程号,课程名,开课学期,学时,学分)。

关系模式为:StuCourse(学号,课程号,成绩)。

试用关系代数表示如下查询:

(1)求专业名为“计算机科学与技术”的学生学号与姓名;

(2)求开课学期为“2”的课程号与课程名;

(3)求修读“计算机基础”的学生姓名。

答:(1)

))((''Student ∏=学号,姓名计算机科学与技术专业名σ (2)

))(('2'Course ∏=课程号,课程名开课学期σ (3))))))(((((''Course StuCourse Student ∏∏=姓名学号计算机基础课程名σ

习题3

1、试述SQL 的特点与功能。

答:SQL 的特点有:

(1) SQL 是一种基于关系代数的数据语言,其理论基础坚实;

(2) SQL 是高度非过程化程度的语言,用户只要指出“干什么”而无需指出“怎么干”;

(3) SQL 集数据定义,操纵与控制于一体,构成一个具有独特风格的一体化语言,此外它还集联机交互与嵌入于一体,使语言能适应广泛的使用环境;

(4) SQL 语言功能强,它不但能表示关系代数的所有功能,还具有统计,计算,视图等其它功能;

(5) SQL 数据独立性强,它所涉及的物理概念少;

(6) SQL 语言简洁,易学易用。

SQL 的功能包括:数据定义、数据操纵、数据控制、嵌入式与会话规则。

2、什么是基本表?什么是视图?二者有何关系与区别?

答:关系数据库中的关系在SQL 中称为基本表。视图是从一个或多个基本表(或视图)导出的表。基本表与视图都采用二维表格结构,都统称为表。但基本表中的数据(元组)需要有数据库中的物理存储空间,而视图在数据库中只保存其定义信息,其数据并不占用存储空间,而是来源于定义该视图的基表。视图上的数据操纵命令最终都将转化成相应基本表上的操作才能得以实现。

3、简述SQL 语言的使用方式。

答:SQL 语言的使用方式包括:交互式、嵌入式两类。

4、SQL 语句按其功能可分为哪几类?

答:SQL 语句按其功能可分为四类,分别是:

(1)数据定义:其功能是创建、更新和撤销模式及其对象。包含的语句动词主要有:CREATE 、DROP 、ALERT 。

(2)数据查询:其功能是进行数据库的数据查询。包含的语句动词主要有:SELECT 。

(3)数据操纵:其功能是完成数据库的数据更新。包含的语句动词主要有:INSERT 、UPDATE 、DELETE 。

(4)数据控制:其功能是进行数据库的授权、事务管理和控制。包含的语句动词主要有:GRANT 、REVOKE 、COMMIT 、ROLLBACK 等。

5、SQL 的数据定义主要包括哪几类对象的定义?

答:SQL 的数据定义包括数据库模式定义、基本表定义、视图定义和索引定义四个部分。

6、什么是索引?定义索引的目的是什么?

答:数据库的索引是一个数据表的辅助结构,它注明了表中各行数据所在的存储位置。

查询是数据库使用最频繁的操作,如何能更快地找到所需数据,是数据库的一项重要任

务。在数据库中建立索引是为了提高数据查询速度。

7、什么是聚簇索引?什么是非聚集索引?

答:聚簇索引(Clustered Index)对表的物理数据页中的数据按索引关键字进行排序,然后重新存储到磁盘上,即聚簇索引与数据是一体的。非聚簇索引(Nonclustered Index)具有完全独立于数据的索引结构。

8、视图有哪些优点?

答:使用视图有下列优点:

①为用户集中数据,简化用户的数据查询和处理。有时用户所需要的数据分散在多个表中,定义视图可将它们集中在一起,从而方便用户的数据查询和处理。

②屏蔽数据库的复杂性。用户不必了解复杂的数据库中的表结构,并且数据库表的更改也不影响用户对数据库的使用。

③简化用户权限的管理。只需授予用户使用视图的权限,而不必指定用户只能使用表的特定列,也增加了安全性。

④便于数据共享。各用户不必都定义和存储自己所需的数据,可共享数据库的数据,这样同样的数据只需存储一次。

⑤可以重新组织数据以便输出到其它应用程序中。

9、设有学生成绩数据库XSCJ,其中包含关系如下:

(1)学生关系:名为Student,描述学生信息。关系模式为:Student(学号,姓名,专业名,性别,出生时间,总学分,备注)。

(2)课程关系:名为Course,描述课程信息。关系模式为:Course(课程号,课程名,开课学期,学时,学分)。

(3)学生选课关系:名为StuCourse,描述学生选课及获得成绩信息。关系模式为:StuCourse(学号,课程号,成绩)。

试写出以下操作的SQL语句:

(1)查询专业名为“计算机科学与技术”的学生学号与姓名;

(2)查询开课学期为“2”的课程号与课程名;

(3)查询修读“计算机基础”的学生姓名;

(4)查询每个学生已选修课程门数和总平均成绩;

(5)查询所有课程的成绩都在80分以上的学生姓名、学号;

(6)删除在Student,StuCourse中所有学号以“2004”开头的元组;

(7)在学生数据库中建立“计算机科学与技术”专业的学生视图ComputerStu;

(8)在视图ComputerStu中查询姓“王”的学生情况。

答:

(1)SELECT 学号, 姓名

FROM Student

WHERE 专业名= '计算机科学与技术'

(2)SELECT 课程号,课程名

FROM Course

WHERE开课学期='2'

(3)SELECT 姓名

FROM Student a, Course b, StuCourse c

WHERE b.课程号=c.课程号AND a.学号=c.学号AND b.课程名='计算机基础'

(4)SELECT 学号,COUNT(*), A VG(成绩)

FROM StuCourse

GROUP BY学号

(5)SELECT 学号, 姓名

FROM Student

WHERE学号IN

(SELECT 学号

FROM StuCourse

GROUP BY 学号

HA VING MIN(成绩) >=80)

(6)DELETE FROM StuCourse

WHERE S# LIKE '2004%'

DELETE FROM Student

WHERE S# LIKE '2004%'

(7)CREATE VIEW ComputerStuAS

SELECT *

FROM Student

WHERE 专业名= '计算机'

(8)SELECT *

FROM ComputerStu

WHERE 姓名LIKE '王%'

习题4

1、数据库设计的任务是什么?

答:数据库设计的基本任务是:根据一个单位的信息需求,处理需求和数据库的支撑环境(包括数据库管理系统、操作系统和硬件),设计出数据库模式(包括外模式、逻辑(概念)模式和内模式)以及典型的应用程序。

2、数据库应用系统设计分哪几个阶段?

答:数据库应用系统设计分六个阶段:系统规划及需求分析阶段,概念设计阶段,逻辑设计阶段,数据库物理设计阶段,应用程序编码、调试、试运行阶段和数据库运行维护阶段。3、简述数据库逻辑设计的任务和步骤。

答:数据库逻辑设计的任务是:把数据库概念设计阶段产生的数据库概念模式转换成数据库管理系统所支持的数据库逻辑模式。

数据库逻辑设计的主要步骤是:

(1)把E-R图转换成关系模式。

(2)对E-R图转换成后形成的关系模式进行规范化和优化。

4、如何把E-R图转换成关系模式?

答:E-R图转换成关系模式主要涉及两方面内容:

(1)实体型转换成关系模式:关系模式中的属性和键码均与实体集中的属性和键码一一对应。

(2)联系转换成关系模式,构成连接关系。若联系本身有属性,则成为连接关系的属性。关键是连接关系的键:若联系为1,1,则每个实体型的键码均为其键;若联系为1:n,则n端实体型的键码为其键;若联系为m:n.则各实体型键组合为其键。

5、为一个图书馆设计一个数据库,用户要求数据库中,对每个借阅者保存读者的读者号、姓名、性别、年龄、单位、电话号码、电子邮件,对每本书保存书号、书名、作者、出版社,

对每本被借出的书保存读者号、借出日期、还书日期。要求:设计出E-R 模型,再将其转换为关系模型。

答:(1)E-R 模型如下:

(2)图书馆关系模型:

读者(读者号,姓名,性别,年龄,单位,电话,电子邮件)

图书(书号,书名,作者,单价,出版社)

借阅(读者号,书号,借阅时间,归还时间)

习题5

1. 什么是数据库建模?数据库建模的主要内容包括什么?

答:在设计数据库时,对现实世界进行分析、抽象,并从中找出内在联系,进而确定数据库的结构,这一过程就称为数据库建模。

数据库建模主要包括两部分内容:确定最基本的数据结构;对约束建模(主要是说明候选码、主码和外码)。

2、简述基本E-R 图的表示方法。

答:在基本E-R 图中,数据元素用矩形表示,属性用椭圆表示,实体之间的联系用菱形和箭头表示。

3、某房屋租赁公司利用数据库记录房主的房屋和公司职员的信息。其中房屋信息包括房屋编号、地址、面积、朝向、租金价格。职员的信息包括员工编号、姓名、联系的客户、约定客户见面时间、约定客户看房的编号。E-R 图如下所示,其中的A~H 应分别填入什么?

编号D 朝向A F 姓名

H C

B 面积E 编号G

答:A :房屋,B :带客户看房,C :职员,D :地址,E :租金价格,F :联系的客户,G :约定客户见面时间,H :约定客户看房编号。

4、某大学的系有若干个教研室,每个教研室有若干个教师,每个学生选修若干门课程,每门课程有若干个学生选修,学生每选修一门课就有一个成绩,每个教师讲授多门保,每门课可由多个教师讲授,每个名师讲授的课程都有由该老师指定的教材及规定的教室。其中,系

有编号、系名、系主任、办公室和电话;学生有学号、姓名、性别;课程有课程号、课程名和学分;教师有编号、姓名、性别、年龄和职称。请画出该系的E-R模型。

答:

5、设计一个适合大学生选课的数据库,该数据库应包含学生、教师、系和课程。哪个学生选了哪门课,哪个教师上了哪门课,学生的成绩,一个系提供哪些课程等信息。用E-R图描述该数据库。

答:

习题6

1、试述下列术语的含义:函数依赖、码、主属性、多值依赖、2NF、3NF、BCNF、4NF、关系规范化。

答:函数依赖:设R(U)是属性集U上的关系模式,X和Y是U的子集,r是R(U)中任意给定的关系实例。若对于r中的任意两个元组s和t,当s[X] = t[X]时,就有s[Y] = t[Y],则称属性子集X函数决定属性子集Y,或称Y函数依赖于X。

码:如果关系模式R 的一个或多个属性A 1,A 2,…,A n 的组合满足如下条件,则该组合为关系模式R 的码:

(1)这些属性函数决定该关系模式的所有属性,即U A A A F n ?→?

...21 (2)A 1,A 2,…,A n 的任何真子集都不能函数决定R 的所有属性。

多值依赖:设R (U )是属性集U 上的一个关系模式,X 、Y 、Z 是U 的子集,且Z =U -X -Y 。对于R 的任何关系r ,如果存在两个元组s 、t ,则必然存在两个元组u 、v ,使得:

u [X ]=v [X ],s [X ]=t [X ],

u [Y ]=t [Y ],且u [Z ]= s [Z ],

v [Y ]=s [Y ],且v [Z ]=t [Z ],

即交换元组s 、t 在属性组Y 上的值,得到两个新元组u 、v 必在关系r 中,则称Y 多值依赖(Multivalued Dependency )于X 。

2NF :对于关系模式R ,若R ∈1NF ,且每一个非主属性完全函数依赖于码,则R 是第二范式的,记作:R ∈2NF 。

3NF :在关系模式R 中,若不存在这样的码X 、属性组Y 和非主属性Z (Z 不包含于Y ),使得X →Y ,Y →Z (这里X →Y )成立,则称R 是第三范式的,记作:R ∈3NF 。

BCNF :设关系模式R ∈1NF ,若Y X →,X Y ?时,X 必含有码,则R 是BC 范式的,记作:R ∈ BCNF 。

4NF :设 FD 、MVD 分别为定义在关系模式R 上的函数依赖集和多值依赖集,D =FD ∪MVD ,若R ∈1NF ,且所有非平凡的多值依赖X →→Y ,其决定因素X 都含有码,则称R 是第四范式的,记作:R ∈4NF 。

关系规范化指通过关系模式分解将一个低级的范式分解为多个高级范式的过程。

2、什么是数据的冗余与数据的不一致性?

答:数据冗余(data redundancy )是指同一数据在一个或多个数据文件中重复存储。数据冗余不仅会占用大量系统存储资源,造成不必要的开销,而且更严重的是会带来数据库操作的异常,对数据库性能发挥造成不好的影响。

数据库中同一个数据在不同的地方出现了不同的值被称为数据的不一致性。

3、函数依赖有哪几种类型?

答:函数依赖有三种类型:平凡与非平凡函数依赖、部分与完全函数依赖、传递函数依赖。

4、举例说明如一个关系模式仅为1NF 的,存在的异常并分析原因。

答:例如学生选课关系模式:StuCourse (学号,姓名,专业,专业负责人,课程号,课程名,学分,成绩),仅为1NF 的,存在数据冗余和更新异常。异常产生的原因在于非主属性对码不是完全函数依赖。

5、试证明若R(U)∈BCNF ,则必有R(U)∈3NF 。

证明:用反证法。设R(U)∈BCNF ,但R(U) ?3NF ,则有如下两种可能的情况:

(1)假设R(U)中存在非主属性A 对码K 为部分函数依赖,即:

K ?→?

p A (A ?K ) 由部分依赖的定义可知:必存在K 的真子集K’,使K’→A (A ?K’)。

由R (U )∈BCNF 及BCNF 的定义可知:K’中必包含码。这说明码K 中含有另一个码K’,这与码的定义矛盾。所以此假设不成立,即R(U)中不存在非主属性A 对码K 为部分函数依赖。

(2)假设R(U)中存在非主属性A 传递依赖于码K ,即存在一个属性集B ,满足:K→B ,B K ,B K ,B→A

由B→A 及R(U)∈BCNF 可知:B 中必含有码(设为K’)。由码的定义可得:K’→U ,

数据库系统基础教程(第二版)课后习题答案

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库课后练习及答案

第一章:一、单选题 1.以下的英文缩写中表示数据库管理系统的是( B)。 A. DB B.DBMS C.DBA D.DBS 2.数据库管理系统、操作系统、应用软件的层次关系从核心到外围分别是(B )。 A. 数据库管理系统、操作系统、应用软件 B. 操作系统、数据库管理系统、应用软件 C. 数据库管理系统、应用软件、操作系统 D. 操作系统、应用软件、数据库管理系统 3.DBMS是(C )。 A. 操作系统的一部分B.一种编译程序 C.在操作系统支持下的系统软件 D.应用程序系统 4.数据库系统提供给用户的接口是(A )。A.数据库语言 B.过程化语言 C.宿主语言D.面向对象语 5.(B )是按照一定的数据模型组织的,长期存储在计算机内,可为多个用户共享的数据的聚集。 A.数据库系统 B.数据库C.关系数据库D.数据库管理系统 6. ( C)处于数据库系统的核心位置。 A.数据模型 B.数据库C.数据库管理系统D.数据库管理员 7.( A)是数据库系统的基础。 A.数据模型B.数据库C.数据库管理系统D.数据库管理员 8.( A)是数据库中全部数据的逻辑结构和特征的描述。 A.模式B.外模式 C.内模式 D.存储模式 9.(C )是数据库物理结构和存储方式的描述。 A.模式 B.外模式 C.内模式D.概念模式 10.( B)是用户可以看见和使用的局部数据的逻辑结构和特征的描述》 A.模式B.外模式C.内模式D.概念模式 11.有了模式/内模式映像,可以保证数据和应用程序之间( B)。 A.逻辑独立性B.物理独立性C.数据一致性D.数据安全性 12.数据管理技术发展阶段中,文件系统阶段与数据库系统阶段的主要区别之一是数据库系统( B)。 A.有专门的软件对数据进行管理 B.采用一定的数据模型组织数据 C.数据可长期保存 D.数据可共享 13.关系数据模型通常由3部分组成,它们是(B )。 A. 数据结构、数据通信、关系操作 B. 数据结构、关系操作、完整性约束 C. 数据通信、关系操作、完整性约束 D. 数据结构、数据通信、完整性约束 14.用户可以使用DML对数据库中的数据进行(A )操纵。 A.查询和更新B.查询和删除 C.查询和修改D.插入和修改 15.要想成功地运转数据库,就要在数据处理部门配备( B)。 A.部门经理B.数据库管理员 C.应用程序员 D.系统设计员 16.下列说法不正确的是(A )。 A.数据库避免了一切数据重复 B.数据库减少了数据冗余 C.数据库数据可为经DBA认可的用户共享 D.控制冗余可确保数据的一致性 17.所谓概念模型,指的是( D)。 A.客观存在的事物及其相互联系 B.将信息世界中的信息数据化 C.实体模型在计算机中的数据化表示 D.现实世界到机器世界的一个中间层次,即信息世界 18.数据库的概念模型独立于( A)。 A.具体的机器和DBMS B.E-R图C.数据维护 D.数据库 19.在数据库技术中,实体-联系模型是一种( C)。 A. 逻辑数据模型 B. 物理数据模型 C. 结构数据模型 D. 概念数据模型 20.用二维表结构表示实体以及实体间联系的数据模型为(C )。 A.网状模型 B.层次模型 C.关系模型 D.面向对象模型 二、填空题 1.数据库领域中,常用的数据模型有(层次模型)、网状模型和(关系模型)。 2.关系数据库是采用(关系数据模型)作为数据的组织方式。 3.数据库系统结构由三级模式和二级映射所组成,三级模式是指(内模式、模式、外模式),二级映射是指 (模式/内模式映射、外模式/模式映射)。 4.有了外模式/模式映像,可以保证数据和应用程序之间的(逻辑独立性)。 5.有了模式/内模式映像,可以保证数据和应用程序之间的(物理独立性)。 6.当数据的物理存储改变了,应用程序不变,而由DBMS处理这种改变,这是指数据的(物理独立性)。 三、简答题 1.在一个大型公司的账务系统中,哪种类型的用户将执行下列功能? a)响应客户对他们账户上的各种查询;b)编写程序以生成每月账单;c)为新类型的账务系统开发模式。 答:a)最终用户;b)应用程序员;c)该部门的DBA或其助手。 2.用户使用DDL还是DML来完成下列任务? a)更新学生的平均成绩;b)定义一个新的课程表;c)为学生表格加上一列。 答:a——DML,更新是在操作具体数据;b和c——DDL,建立和修改表结构属于数据定义。 第二章:一、单选题

数据库基础教程CH1 答案

Exercises 2.3.1 In this exercise we introduce one of our running examples of a relational database schema. The database schema consists of four relations, whose schemas are: Product (maker, model, type) PC (model, speed, ram. hd, price) Laptop (model, speed, ram, hd, screen, price) Printer (model, color, type, price) The Product relation gives the manufacturer, model number and type (PC, laptop, or printer) of various products. We assume for convenience that model numbers are unique over all manufacturers and product types; that assumption is not realistic, and a real database would include a code for the manufacturer as part of the model number. The PC relation gives for each model number that is a PC the speed (of the processor, in gigahertz), the amount of RAM (in megabytes), the size of the hard disk (in gigabytes), and the price. The Laptop relation is similar, except that the screen size (in inches) is also included. The Printer relation records for each printer model whether the printer produces color output (true, if so), the process type (laser or ink-jet, typically), and the price. Write the following declarations: a) A suitable schema for relation Product. b) A suitable schema for relation PC. c) A suitable schema for relation Laptop. d) A suitable schema for relation Printer. e)An alteration to your Printer schema from (d) to delete the attribute color. f)An alteration to your Laptop schema from (c) to add the attribute od (optical-disk type, e.g., cd or dvd). Let the default value for this attribute be 'none' if the laptop does not have an optical disk. Exercise 2.3.1a CREATE TABLE Product ( maker CHAR(30), model CHAR(10) PRIMARY KEY, type CHAR(15) ); Exercise 2.3.1b CREATE TABLE PC ( model CHAR(30), speed DECIMAL(4,2), ram INTEGER, hd INTEGER, price DECIMAL(7,2) );

数据库课后答案讲解学习

第1章习题 一、填空题 1. 在数据管理技术发展历程的几个阶段中,在(人工管理)阶段数据不能保存。 2. 数据模型由以下三要素组成:(数据结构)、数据操作和数据的约束条件。 3. 数据模型按不同的应用层次分成三种类型,它们是:概念数据模型、(逻辑数据模型)、(物理 数据模型)。 4. E-R模型属于(概念数据)模型,结构数据模型指层次、网状、关系。 5. 数据库专家们提出了数据库系统分级的系统结构模型,整个系统分为三级,它们分别是(外模式)、 (模式)和(内模式)。 二、选择题 1.在文件系统阶段,操作系统管理数据的基本单位是(A )。 A.文件 B.记录 C.程序 D.数据项 2. 数据管理技术发展过程中,文件系统与数据库系统的重要区别是数据库具有(C)。 A.数据可共享 B.数据无冗余 C.特定的数据模型 D.有专门的数据管理软件 3. 在数据库的数据模型中有(A)。 A.网状模型、层次模型、关系模型 B.数字型、字母型、日期型 C.二数值型、字符型、逻辑型 D.数学模型、概念模型、逻辑模型 4. 用表格形式的结构表示实体类型以及实体类型之间联系的数据模型是(A)。 A.关系数据模型 B.层次数据模型 C.网状数据模型 D.面向对象数据模型 5. 描述概念模型的常用方法是(D)。 A.建立数据模型方法 B.需求分析方法 C.二维表方法 D.实体-联系方法 三、判断题 1. 数据库管理员是专门从事数据库设计、管理和维护的工作人员。(√) 2. 计算机的数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。(√) 3. 逻辑数据模型(又称数据模型),它是一种面向客观世界、面向用户的模型;它与具体的数据库系 统无关,与具体的计算机平台无关。(?) 4. 数据模型通常由数据结构、数据操作和完整性约束三部分组成。(√) 5. 内模式亦称为子模式或用户模式,描述的是数据的局部逻辑结构。(?) 四、简答题 1.解释数据库、数据库管理系统和数据库系统的概念。 答: 数据库(DataBase)是具有统一结构形式、可共享的、长期储存在计算机内的数据的集合。 数据库管理系统(DataBase Management System)是一组用于数据管理的通用化软件所组成的软件系统,位于用户与操作系统之间,是数据库系统的核心。它负责数据库中的数据组织、数据操纵、数据维护和数据控制等功能的实现。 数据库系统(DataBase System)是由数据库、数据库管理系统、数据库管理员和用户等组成的计算机系统的总称。 2.数据管理经历了哪几个阶段,各阶段的特点是什么? 答:数据管理技术经历了人工管理、文件系统管理和数据库系统三个阶段。 人工管理数据有如下特点: (1)数据不保存 (2)应用程序管理数据 (3)数据不共享

南京理工大学《数据库系统基础教程》试题和答案

一、选择题60(选择一个最合适的答案,在答题纸上涂黑) 1.一个事务中的一组更新操作是一个整体,要么全部执行,要么全部不执行。这是事务的:A.原子性B.一致性 C.隔离性 D.持久性 2.在数据库的三级模式结构中,描述一个数据库中全体数据的全局逻辑结构和特性的是:A.外模式 B.模式 C.存储模式D.模式 3.关于联系的多重性,下面哪种说法不正确? A.一个多对多的联系中允许多对一的情形。 B.一个多对多的联系中允许一对一的情形。 C.一个多对一的联系中允许一对一的情形。 D.一个多对一的联系中允许多对多的情形。 4.考虑学校里的"学生"和"课程"之间的联系,该联系的多重性应该是: A. 一对一 B. 多对一 C. 一对多 D. 多对多 5.下面哪种约束要求一组属性在同一实体集任意两个不同实体上的取值不同。 A. 键(key)约束。 B. 单值约束。 C. 参照完整性。 D. 域(domain)约束 6.关系模型要求各元组的每个分量的值必须是原子性的。对原子性,下面哪种解释不正确:A.每个属性都没有部结构。 B.每个属性都不可再分解。 C.各属性值应属于某种基本数据类型。 D.属性值不允许为NULL。 7.对于一个关系的属性(列)集合和元组(行)集合,下面哪种说法不正确: A.改变属性的排列次序不影响该关系。 B.改变元组的排列次序不影响该关系。 C.改变元组的排列次序会改变该关系。 D.关系的模式包括其名称及其属性集合。 8.若R是实体集R1与R2间的一个多对多联系,将其转换为关系R',哪种说法不正确:A.R'属性应包括R1与R2的所有属性。 B.R'属性应包括R1与R2的键属性。 C.R1与R2的键属性共同构成R'的键。 D.R'的属性应包括R自身定义的属性。 9.关于函数依赖的判断,下面哪种说法不正确? A.若任意两元组在属性A上一致,在B上也一致,则有A → B成立。 B.若任意两元组在属性A上一致,在B上不一致,则A → B不成立。 C.若任意两元组在属性A上不可能一致,则不管在B上是否一致,有A → B成立。

数据库课后题答案

1)查询全体图书的图书号,书名,作者,出版社,单价。 SELECT * FROM 图书 2)查询全体图书的信息,其中单价打8折,并且将该列设置别名为’打折价’ 。 SELECT 图书号,书名,作者,出版社,单价*0.8 ‘打折价’ FROM 图书 3)显示所有借阅者的读者号,并去掉重复行。 SELECT DISTINCT 读者号FROM 借阅 4)查询所有单价在20到30之间的图书信息。 SELECT * FROM 图书 WHERE 单价BETWEEN 20 AND 30 5)查询所有单价不在20到30之间的图书信息。 SELECT * FROM 图书 WHERE 单价NOT BETWEEN 20.00 AND 30.00 6)查询机械工业出版社、科学出版社、人民邮电出版社的图书信息 SELECT * FROM 图书 WHERE 出版社IN (‘机械工业出版社’, ‘科学出版社’, ‘人民邮电出版社’) 7)查询既不是机械工业出版社、也不是科学出版社出版的图书信息 SELECT * FROM 图书 WHERE 出版社NOT IN (‘机械工业出版社’, ‘科学出版社’) 8)查找姓名的第二个字符是’建’并且只有两三个字符的读者的读者号、姓名。 SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘_建_’ 9)查找姓名以’王’开头的所有读者的读者号、姓名。 SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘王%’ 10)查找姓名以’王’、’张’或’李’开头的所有读者的读者号、姓名。 SELECT 读者号,姓名FROM 读者WHERE 姓名LIKE ‘[王张李]%’ 11)查找姓名不是以’王’、’张’或’李’开头的所有读者的读者号、姓名。 SELECT 读者号,姓名FROM 读者WHERE 姓名NOT LIKE ‘[王张李]%’ 12)查询无归还日期的借阅信息。 SELECT * FROM 借阅WHERE 归还日期IS NULL 13)查询有归还日期的借阅信息。 SELECT * FROM 借阅WHERE 归还日期IS NOT NULL 14)查询单价在20元以上,30元以下的机械工业出版社出版的图书名,单价。 SELECT 书名,单价FROM 图书WHERE 出版社=’机械工业出版社’ AND 单价>20.00 AND 单价<30.00 15)查询机械工业出版社或科学出版社出版的图书名,出版社,单价。 SELECT 书名,出版社,单价FROM 图书WHERE 出版社=’机械工业出版社’ OR 出版社=’科学出版社’ 16)求读者的总人数 SELECT COUNT(*) AS ‘读者总人数’ FROM 读者 17)求借阅了图书的读者的总人数 SELECT COUNT(DISTINCT 读者号) AS ‘借阅过图书的读者总人数’ FROM 借阅 18)求机械工业出版社图书的平均价格、最高价、最低价。 SELECT A VG(单价) AS ‘平均价’,MAX(单价) AS ‘最高价’, MIN(单价) AS ‘最低价’ FROM 图书WHERE 出版社=’机械工业出版社’ 19)查询借阅图书本数超过2本的读者号、总本数。并按借阅本数值从大到小排序。

数据库系统实现课后习题答案

6.1.2 如果OUTPUT动作顺序恰当,即使在事务执行过程中发生故障,一致性仍能得到保持。

6.2.3 答案1 若题目是:; ; ….则答案是 a)首先扫描日志,发现事务T和U都未commit,将其连接到未完成事务列.按照未完成事务列,从后往前逐步扫描日志并执行undo操作,按照将磁盘中A值写为10,将写入日志中并刷新日志。 b)首先扫描日志,发现事务T已经commit,将其连接到已完成事务列,事务U未完成,将其连接到未完成事务列。按照未完成事务列,从后往前扫描日志执行undo操作,按照将磁盘中C值写为30,将磁盘A值写为10。将写入日志中并刷新日志。 c)首先扫描日志,发现事务T已经commit,将其连接到已完成事务列,事务U未完成,将其连接到未完成事务列。按照未完成事务列从后往前扫描日志执行undo操作,按照将磁盘中E值写为50,将磁盘中C值写为30,将磁盘A值写为10。将写入日志中并刷新日志。 d)首先扫描日志,发现事务T、U已经commit,将其连接到已完成列,未完成列为空,不做任何操作。答案2 a) 事务T、U未提交,要被撤销。向后扫描日志,遇到记录,于是将A在磁盘上的值存为10。最后,记录被写到日志中且日志被刷新。 b) 事务T已提交,U未提交,要被撤销。向后扫描日志,首先遇到记录,于是将C在磁盘上的值存为30。接着遇到记录,并将A在磁盘上的值置为10。最后,记录被写到日志中且日志被刷新。 c) 事务T已提交,U未提交,要被撤销。向后扫描日志,首先遇到记录,将E在磁盘上的值存为50。接着遇到记录,于是将C在磁盘上的值存为30。再遇到记录,并将A在磁盘上的值置为10。最后,记录被写到日志中且日志被刷新。 d) 事务T、U均被提交。什么都不做。 6.2.4

(完整版)数据库课后习题及答案

第一章数据库系统概述 选择题 1实体-联系模型中,属性是指(C) A.客观存在的事物 B.事物的具体描述 C.事物的某一特征 D.某一具体事件 2对于现实世界中事物的特征,在E-R模型中使用(A) A属性描述B关键字描述C二维表格描述D实体描述 3假设一个书店用这样一组属性描述图书(书号,书名,作者,出版社,出版日期),可以作为“键”的属性是(A) A书号B书名C作者D出版社 4一名作家与他所出版过的书籍之间的联系类型是(B) A一对一B一对多C多对多D都不是 5若无法确定哪个属性为某实体的键,则(A) A该实体没有键B必须增加一个属性作为该实体的键C取一个外关键字作为实体的键D该实体的所有属性构成键 填空题 1对于现实世界中事物的特征在E-R模型中使用属性进行描述 2确定属性的两条基本原则是不可分和无关联 3在描述实体集的所有属性中,可以唯一的标识每个实体的属性称为键 4实体集之间联系的三种类型分别是1:1 、1:n 、和m:n 5数据的完整性是指数据的正确性、有效性、相容性、和一致性 简答题 一、简述数据库的设计步骤 答:1需求分析:对需要使用数据库系统来进行管理的现实世界中对象的业务流程、业务规则和所涉及的数据进行调查、分析和研究,充分理解现实世界中的实际问题和需求。 分析的策略:自下而上——静态需求、自上而下——动态需求 2数据库概念设计:数据库概念设计是在需求分析的基础上,建立概念数据模型,用概念模型描述实际问题所涉及的数据及数据之间的联系。 3数据库逻辑设计:数据库逻辑设计是根据概念数据模型建立逻辑数据模型,逻辑数据模型是一种面向数据库系统的数据模型。 4数据库实现:依据关系模型,在数据库管理系统环境中建立数据库。 二、数据库的功能 答:1提供数据定义语言,允许使用者建立新的数据库并建立数据的逻辑结构 2提供数据查询语言 3提供数据操纵语言 4支持大量数据存储 5控制并发访问 三、数据库的特点 答:1数据结构化。2数据高度共享、低冗余度、易扩充3数据独立4数据由数据库管理系统统一管理和控制:(1)数据安全性(2)数据完整性(3)并发控制(4)数据库恢复 第二章关系模型和关系数据库 选择题 1把E-R模型转换为关系模型时,A实体(“一”方)和B实体(“多”方)之间一对多联系在关系模型中是通过(A)来实现的

数据库课后习题答案崔巍版

数据库课后习题答案崔 巍版 Document serial number【KKGB-LBS98YT-BS8CB-BSUT-BST108】

《数据库系统及应用》(第二版)习题解答 习题一 1.什么是数据库 数据库是相互关联的数据的集合,它用综合的方法组织数据,具有较小的数据冗余,可供多个用户共享,具有较高的数据独立性,具有安全控制机制,能够保证数据的安全、可靠,允许并发地使用数据库,能有效、及时地处理数据,并能保证数据的一致性和完整性。 2.简要概述数据库、数据库管理系统和数据库系统各自的含义。 数据库、数据库管理系统和数据库系统是三个不同的概念,数据库强调的是相互关联的数据,数据库管理系统是管理数据库的系统软件,而数据库系统强调的是基于数据库的计算机应用系统。 3.数据独立性的含义是什么 数据独立性是指数据的组织和存储方法与应用程序互不依赖、彼此独立的特性。这种特性使数据的组织和存储方法与应用程序互不依赖,从而大大降低应用程序的开发代价和维护代价。 4.数据完整性的含义是什么 保证数据正确的特性在数据库中称之为数据完整性。 5.简要概述数据库管理员的职责。 数据库管理员的职责可以概括如下: (1)首先在数据库规划阶段要参与选择和评价与数据库有关的计算机软件和硬件,要与数据库用户共同确定数据库系统的目标和数据库应用需求,要确定数据库的开发计划; (2)在数据库设计阶段要负责数据库标准的制定和共用数据字典的研制,要负责各级数据库模式的设计,负责数据库安全、可靠方面的设计; (3)在数据库运行阶段首先要负责对用户进行数据库方面的培训;负责数据库的转储和恢复;负责对数据库中的数据进行维护;负责监视数据库的性能,并调整、改善数据库的性能,提高系统的效率;继续负责数据库安全系统的管理;在运行过程中发现问题、解决问题。 6.文件系统用于数据管理存在哪些明显的缺陷 文件系统用于数据管理明显存在如下缺陷: (1)数据冗余大。这是因为每个文件都是为特定的用途设计的,因此就会造成同样的数据在多个文件中重复存储。 (2)数据不一致性。这往往是由数据冗余造成的,在进行更新时,稍不谨慎就会造成同一数据在不同文件中的不一致。 (3)程序和数据之间的独立性差。应用程序依赖于文件的存储结构,使得若修改文件的存储结构则必须修改程序。 (4)数据联系弱。文件与文件之间是独立的,文件之间的联系必须通过程序来构造。因此,文件系统是一个不具有弹性的、无结构的数据集合,不能反映现实世界事物之间的联系。 习题二 1.数据的三种范畴的含义是什么 数据需要我们的认识、理解、整理、规范和加工,然后才能存放到数据库中。数据从现实生活进入到数据库实际经历了现实世界阶段(认识、理解)、信息世界阶段(规范、提升)和机器世界阶段(管理),我们也把之称为数据的三种范畴,数据在三种范畴中的概念、术语都有些不同。

数据库系统原理(2018年版)课后习题参考答案解析

答案仅供参考 第一章数据库系统概述 选择题 B、B、A 简答题 1.请简述数据,数据库,数据库管理系统,数据库系统的概念。 P27 数据是描述事物的记录符号,是指用物理符号记录下来的,可以鉴别的信息。 数据库即存储数据的仓库,严格意义上是指长期存储在计算机中的有组织的、可共享的数据集合。 数据库管理系统是专门用于建立和管理数据库的一套软件,介于应用程序和操作系统之间。数据库系统是指在计算机中引入数据库技术之后的系统,包括数据库、数据库管理系统及相关实用工具、应用程序、数据库管理员和用户。 2.请简述早数据库管理技术中,与人工管理、文件系统相比,数据库系统的优点。 数据共享性高 数据冗余小 易于保证数据一致性 数据独立性高 可以实施统一管理与控制 减少了应用程序开发与维护的工作量 3.请简述数据库系统的三级模式和两层映像的含义。 P31 答: 数据库的三级模式是指数据库系统是由模式、外模式和内模式三级工程的,对应了数据的三级抽象。 两层映像是指三级模式之间的映像关系,即外模式/模式映像和模式/内模式映像。 4.请简述关系模型与网状模型、层次模型的区别。 P35 使用二维表结构表示实体及实体间的联系 建立在严格的数学概念的基础上 概念单一,统一用关系表示实体和实体之间的联系,数据结构简单清晰,用户易懂易用 存取路径对用户透明,具有更高的数据独立性、更好的安全保密性。

第二章关系数据库 选择题 C、C、D 简答题 1.请简述关系数据库的基本特征。P48 答:关系数据库的基本特征是使用关系数据模型组织数据。 2.请简述什么是参照完整性约束。 P55 答:参照完整性约束是指:若属性或属性组F是基本关系R的外码,与基本关系S的主码K 相对应,则对于R中每个元组在F上的取值只允许有两种可能,要么是空值,要么与S中某个元组的主码值对应。 3.请简述关系规范化过程。 答:对于存在数据冗余、插入异常、删除异常问题的关系模式,应采取将一个关系模式分解为多个关系模式的方法进行处理。一个低一级范式的关系模式,通过模式分解可以转换为若干个高一级范式的关系模式,这就是所谓的规范化过程。 第三章数据库设计 选择题 B、C、C 简答题 1. 请简述数据库设计的基本步骤。 P66 需求分析设计;概念结构设计;逻辑结构设计;物理结构设计;数据库设计;数据库的运行和维护。 2. 请分别举例说明实体之间联系的三种表现情形。 P74 一对一联系:对于实体集A中的每个实体,实体集B中最多只有一个实体与之联系,反之亦然。举例:班级与班长,每个班只有一个班长,每个班长也只在一个班内任职。 一对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中最多只有一个实体与之联系。举例:班级与班级成员,每个班级对应多个班级成员,每个班级成员只对应一个班级。 多对多联系:对于实体集A中的每个实体,实体集B中有N个实体与之联系,反之,对于实体集B中的每个实体,实体集A中有M个实体与之联系。举例:授课班级与任课教师,每个

数据库sql课后练习题及答案解析

数据库sql课后练习题及答案解析 (borrow 表) (reader表)1) 找出姓李的读者姓名(NAME)和所在单位(COMPANY)。2) 列出图书库中所有藏书的书名(BOOK_NAME)及出版单位(OUTPUT)。3) 查找“高等教育出版社”的所有图书名称(BOOK_NAME)及单价(PRICE),结果按单价降序排 序。4) 查找价格介于10元和20元之间的图书种类(SORT),结果按出版单位(OUTPUT)和单价(PRICE)升序排序。5) 查找书名以”计算机”开头的所有图书和作者(WRITER)。6) 检索同时借阅了总编号(BOOK_ID)为112266和449901两本书的借书证号(READER_ID)。##7)* 查找所有借了书的读者的姓名(NAME)及所在单位(COMPANY)。8)* 找出李某所借所有图书的书名及借书日期(BORROW_DATE)。9)* 无重复地查询xx年10月以后借书的读者借书证号(READER_ID)、姓名和单位。##10)* 找出借阅了一书的借书证号。11) 找出与”赵正义”在同一天借书的读者姓名、所在单位及借书日期。12) 查询xx年7月以后没有借书的读者借书证号、姓名及单位。#13) 求”科学出版社”图书的最高单价、最低单价、平均单价。##14)* 求”信息系”当前借阅图书的读者人次数。#15) 求出各个出版社图

书的最高价格、最低价格和总册数。#16) 分别找出各单位当前借阅图书的读者人数及所在单位。17)* 找出当前至少借阅了2本图书(大于等于2本)的读者姓名及其所在单位。18) 分别找出借书人次数多于1人次的单位及人次数。19) 找出藏书中各个出版单位的名称、每个出版社的书籍的总册数(每种可能有多册)、书的价值总额。20) 查询经济系是否还清所有图书。如果已经还清,显示该系所有读者的姓名、所在单位和职称。附录:建表语句创建图书管理库的图书、读者和借阅三个基本表的表结构:创建BOOK:(图书表)CREATE TABLE BOOK ( BOOK_ID int, SORT VARCHAR(10), BOOK_NAME VARCHAR(50), WRITER VARCHAR(10), OUTPUT VARCHAR(50), PRICE int); 创建READER:(读者表)CREATE TABLE READER (READER_ID int,COMPANY VARCHAR(10),NAME VARCHAR(10),SEX VARCHAR(2),GRADE VARCHAR(10),ADDR VARCHAR(50)); 创建BORROW:(借阅表)CREATE TABLE BORROW ( READER_ID int, BOOK_ID int, BORROW_DATE datetime)插入数据:BOOK表:insert into BOOK values(445501,'TP3/12','数据库导论','王强','科学出版社', 17、90);insert into BOOK values(445502,'TP3/12','数据库导论','王强','科学出版社', 17、90);insert into BOOK values(445503,'TP3/12','数据库导论','王强','科学出版社',

数据库系统基础教程(第二版)课后习题答案2

Database Systems: The Complete Book Solutions for Chapter 2 Solutions for Section 2.1 Exercise 2.1.1 The E/R Diagram. Exercise 2.1.8(a) The E/R Diagram Kobvxybz Solutions for Section 2.2 Exercise 2.2.1 The Addresses entity set is nothing but a single address, so we would prefer to make address an attribute of Customers. Were the bank to record several addresses for a customer, then it might make sense to have an Addresses entity set and make Lives-at a many-many relationship. The Acct-Sets entity set is useless. Each customer has a unique account set containing his or her accounts. However, relating customers directly to their accounts in a many-many relationship conveys the same information and eliminates the account-set concept altogether. Solutions for Section 2.3 Exercise 2.3.1(a) Keys ssNo and number are appropriate for Customers and Accounts, respectively. Also, we think it does not make sense for an account to be related to zero customers, so we should round the edge connecting Owns to Customers. It does not seem inappropriate to have a customer with 0 accounts;

数据库原理课后习题答案

第1章绪论 2 ?使用数据库系统有什么好处? 答:使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。 6 .数据库管理系统的主要功能有哪些? 答:(I )数据库定义功能;(2 )数据存取功能; (3 )数据库运行管理;(4 )数据库的建立和维护功能。 8 ?试述概念模型的作用。 答:概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模, 是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是 数据库设计人员和用户之间进行交流的语言。 12 ?学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教 授和副教授每人各带若干研究生;每个班有若干学生,每个学生选修若干课程,每门课可由 若干学生选修。请用E —R图画出此学校的概念模型。 答:实体间联系如下图所示,联系-选修有一个属性:成绩。 各实体需要有属性说明,需要画出各实体的图(带属性)或在下图中直接添加实体的属性,比如:学生的属性包括学号、姓名、性别、身高、联系方式等,此略。 13 ?某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。 这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品

分别放在仓库中,原材料按照类别放在若干仓库中。请用 E 一R图画出此工厂产品、零 件、材料、仓库的概念模型。 答:各实体需要有属性,此略。 联系组成、制造、储存、存放都有属性:数量。 20 ?试述数据库系统三级模式结构,这种结构的优点是什么? 答:数据库系统的三级模式结构由外模式、模式和内模式组成。 外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有 关的数据的逻辑表示。 模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公 共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通 常是模式的子集。 内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储 方式的描述。 数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。数据库系统 在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像,这两层映像保 证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 22 ?什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系 统具有数据与程序的独立性? 答:数据与程序的逻辑独立性是指用户的的应用程序与数据库的逻辑结构是相互独立的。 数据与程序的物理独立性是指用户的的应用程序与存储在磁盘上的数据库中数据是相互独立的。 当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管 理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

数据库原理课后习题答案

第1章绪论 2 .使用数据库系统有什么好处? 答:使用数据库系统的优点是很多的,既便于数据的集中管理,控制数据冗余,提高数据的利用率和一致性,又有利于应用程序的开发和维护。 6 .数据库管理系统的主要功能有哪些? 答:( l )数据库定义功能;( 2 )数据存取功能; ( 3 )数据库运行管理;( 4 )数据库的建立和维护功能。 8 .试述概念模型的作用。 答:概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言。 12 .学校中有若干系,每个系有若干班级和教研室,每个教研室有若干教员,其中有的教授和副教授每人各带若干研究生;每个班有若干学生,每个学生选修若干课程,每门课可由若干学生选修。请用 E 一R 图画出此学校的概念模型。 答:实体间联系如下图所示,联系-选修有一个属性:成绩。 各实体需要有属性说明,需要画出各实体的图(带属性)或在下图中直接添加实体的属性,比如:学生的属性包括学号、姓名、性别、身高、联系方式等,此略。 13 .某工厂生产若干产品,每种产品由不同的零件组成,有的零件可用在不同的产品上。这些零件由不同的原材料制成,不同零件所用的材料可以相同。这些零件按所属的不同产品分别放在仓库中,原材料按照类别放在若干仓库中。请用 E 一R 图画出此工厂产品、零件、材料、仓库的概念模型。 答:各实体需要有属性,此略。 联系组成、制造、储存、存放都有属性:数量。

20 .试述数据库系统三级模式结构,这种结构的优点是什么? 答:数据库系统的三级模式结构由外模式、模式和内模式组成。 外模式,亦称子模式或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。 模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。外模式涉及的是数据的局部逻辑结构,通常是模式的子集。 内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。 数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMs 管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像,这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。 22 .什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性? 答:数据与程序的逻辑独立性是指用户的的应用程序与数据库的逻辑结构是相互独立的。 数据与程序的物理独立性是指用户的的应用程序与存储在磁盘上的数据库中数据是相互独立的。 当模式改变时(例如增加新的关系、新的属性、改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。 当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。

相关文档 最新文档