习题11、简述数据库系统的特点。
答:数据库系统的特点有: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)数据物理存取路径对用户是透明的,有更高的数据独立性、更好的数据安全性。
习题21、解释以下术语:关系、元组、属性、码、域、分量、关系模式。
答:(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、什么是数据完整性?如何实现数据完整性?试述关系完整性规则。
答:数据完整性是指数据库中的数据在逻辑上的正确性、有效性和相容性。