数据库系统习题答案.docx
- 文档编号:23542339
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:13
- 大小:140.72KB
数据库系统习题答案.docx
《数据库系统习题答案.docx》由会员分享,可在线阅读,更多相关《数据库系统习题答案.docx(13页珍藏版)》请在冰豆网上搜索。
数据库系统习题答案
数据库系统习题答案
习题1
1、简述数据库系统的特点。
答:
数据库系统的特点有:
1)数据结构化
在数据库系统中,采用统一的数据模型,将整个组织的数据组织为一个整体;数据不再仅面向特定应用,而是面向全组织的;不仅数据内部是结构化的,而且整体是结构化的,能较好地反映现实世界中各实体间的联系。
这种整体结构化有利于实现数据共享,保证数据和应用程序之间的独立性。
2)数据共享性高、冗余度低、易于扩充
数据库中的数据能够被多个用户、多个应用程序共享。
数据库中相同的数据不会多次重复出现,数据冗余度降低,并可避免由于数据冗余度大而带来的数据冲突问题。
同时,当应用需求发生改变或增加时,只需重新选择不同的子集,或增加数据即可满足。
3)数据独立性高
数据独立性是由DBMS的二级映像功能来保证的。
数据独立于应用程序,降低了应用程序的维护成本。
4)数据统一管理与控制
数据库中的数据由数据库管理系统(DBMS)统一管理与控制,应用程序对数据的访问均经由DBMS。
DBMS提供四个方面的数据控制功能:
并发访问控制、数据完整性、数据安全性保护、数据库恢复。
2、什么是数据库系统?
答:
在计算机系统上引入数据库技术就构成一个数据库系统(DataBaseSystem,DBS)。
数据库系统是指带有数据库并利用数据库技术进行数据管理的计算机系统。
DBS有两个基本要素:
一是DBS首先是一个计算机系统;二是该系统的目标是存储数据并支持用户查询和更新所需要的数据。
3、简述数据库系统的组成。
答:
数据库系统一般由数据库、数据库管理系统(及其开发工具)、数据库管理员(DataBaseAdministrator,DBA)和用户组成。
4、试述数据库系统的三级模式结构。
这种结构的优点是什么?
答:
数据库系统的三级模式结构是指数据库系统是由外模式、模式和内模式三级构成,同时包含了二级映像,即外模式/模式映像、模式/内模式映像,如下图所示。
数据库系统的这种结构具有以下优点:
(1)保证数据独立性。
将外模式与模式分开,保证了数据的逻辑独立性;将内模式与模式分开,保证了数据的物理独立性。
(2)有利于数据共享,减少了数据冗余。
(3)有利于数据的安全性。
不同的用户在各自的外模式下根据要求操作数据,只能对限定的数据进行操作。
(4)简化了用户接口。
按照外模式编写应用程序或输入命令,而不需了解数据库全局逻辑结构和内部存储结构,方便用户系统。
5、什么是数据的物理独立性与逻辑独立性?
并说明其重要性。
答:
(1)数据的物理独立性是指数据的物理结构(包括存储结构、存取方式等)的改变,存储设备的更换,物理存储的更换,存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。
(2)数据的逻辑独立性是指数据库总体逻辑结构的改变,如修改数据模式,增加新的数据类型、改变数据间联系等,不需要相应修改应用程序。
(3)数据的独立性使得数据库中数据独立于应用程序而不依赖于应用程序,也就是说数据的逻辑结构、存储结构与存取方式的改变不影响应用程序。
相应的,数据的独立性也使得应用程序的编制不再依赖于数据的物理和逻辑结构,提高了应用程序的可移植性与鲁棒性。
从理论上说,数据的独立性可以使数据的组织和应用程序的编制完全分离。
6、数据库管理系统的功能主要有哪几方面?
答:
数据库管理系统的主要功能包括以下几个方面:
(1)有效地组织、存取和维护数据。
(2)数据定义功能。
DBMS通过数据定义语言(DataDefinitionLanguage,DDL)定义数据库的各类数据对象,包括数据的结构、数据约束条件等。
(3)数据操纵功能。
DBMS提供数据操纵语言(DataManipulationLanguage,DML),用户使用DML实现对数据库中的数据进行查询、增加、删除和修改等操作。
(4)数据库的事务管理和运行管理。
DBMS提供数据控制语言(DataControlLanguage,DCL),数据库管理员使用DCL实现对数据库的安全性保护、完整性检查、并发控制、数据库恢复等数据库控制功能。
(5)数据库的建立和维护功能。
(6)其他功能。
包括:
数据库初始数据输入与转换、数据库转储、数据库重组、数据库性能监视与分析、数据通信等,这些功能通常由DBMS提供的实用程序或管理工具完成。
7、数据库系统的人员主要包括哪些?
答:
数据库系统的人员主要包括:
数据库管理员、系统分析员和数据库设计人员、应用程序员和最终用户。
8、什么是数据模型?
答:
数据模型(DataModel)是一种抽象模型,是对现实世界数据特征的抽象。
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=(Ai,Aj,…,Ak)是最小集,即若删除K中的任一属性,K都不满足最小性。
5、关系操作的特点是什么?
答:
关系操作的特点是集合操作,即操作的对象和结果都是关系。
6、基本的关系操作包括哪些?
答:
关系模型的基本操作包括查询和更新两大类:
(1)数据查询操作用于对关系数据进行各种检索。
它是一个数据库最基本的功能,通过查询,用户可以访问关系数据库中的数据。
查询可以在一个关系内进行,也可以在多个关系间进行。
关系查询的基本单位是元组分量,查询即定位符合条件的元组。
(2)数据更新操作操作包括插入、删除和修改三种。
数据删除的基本单位为元组,其功能是将指定关系内的指定元组删除。
数据插入的功能在指定关系中插入一个或多个元组。
数据修改实在一个关系中修改指定的元组属性值。
7、关系代数的运算主要包含哪些?
答:
关系代数的运算可分为两类:
(1)传统的集合运算。
其运算是以元组作为集合中元素来进行的,从关系的“水平”方向即行的角度进行。
包括并、差、交和笛卡尔积。
(2)专门的关系运算。
其运算不仅涉及行,也涉及列。
这类运算是为数据库的应用而引进的特殊运算,包括选择、投影、连接和除法等。
8、什么是数据完整性?
如何实现数据完整性?
试述关系完整性规则。
答:
数据完整性是指数据库中的数据在逻辑上的正确性、有效性和相容性。
数据完整性是通过定义一系列完整性约束条件,由DBMS负责检查约束条件来实现的。
关系模型有三类完整性约束规则:
实体完整性、参照完整性和用户定义的完整性。
9、有如下的学生成绩数据库:
Student(学号,姓名,专业名,性别,出生时间,总学分,备注)。
Course(课程号,课程名,开课学期,学时,学分)。
关系模式为:
StuCourse(学号,课程号,成绩)。
试用关系代数表示如下查询:
(1)求专业名为“计算机科学与技术”的学生学号与姓名;
(2)求开课学期为“2”的课程号与课程名;
(3)求修读“计算机基础”的学生姓名。
答:
(1)
(2)
(3)
习题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)数据定义:
其功能是创建、更新和撤销模式及其对象。
包含的语句动词主要有:
如下:
(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学号,姓名
FROMStudent
WHERE专业名='计算机科学与技术'
(2)SELECT课程号,课程名
FROMCourse
WHERE开课学期='2'
(3)SELECT姓名
FROMStudenta,Courseb,StuCoursec
WHEREb.课程号=c.课程号ANDa.学号=c.学号ANDb.课程名='计算机基础'
(4)SELECT学号,COUNT(*),AVG(成绩)
FROMStuCourse
GROUPBY学号
(5)SELECT学号,姓名
FROMStudent
WHERE学号IN
(SELECT学号
FROMStuCourse
GROUPBY学号
HAVINGMIN(成绩)>=80)
(6)DELETEFROMStuCourse
WHERES#LIKE'2004%'
DELETEFROMStudent
WHERES#LIKE'2004%'
(7)CREATEVIEWComputerStuAS
SELECT*
FROMStudent
WHERE专业名='计算机'
(8)SELECT*
FROMComputerStu
WHERE姓名LIKE'王%'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 系统 习题 答案