数据库原理课后习题

  1. 试述数据、数据库、数据库管理系统、数据库系统的概念。
    1) 数据(Data):描述事物的符号记录,数据是数据库中存储的基本对象。
    2) 数据库(Database,简称DB):是长期储存在计算机内、有组织的、可共享的大量数据集合
    3) 数据库管理系统(DBMS):是位于用户与操作系统之间的一层数据管理软件。 是基础软件,是一个大型复杂的软件系统
    4) 数据库系统(DBS):是指在计算机系统中引入数据库后的系统构成。 在不引起混淆的情况下常常把数据库系统简称为数据库。

  2. 使用数据库系统有什么好处?
    1) 查询迅速、准确,而且可以节约大量纸面文件;
    2) 数据结构化,并由DBMS统一管理;
    3) 数据冗余度小;可以大量存储
    4) 具有较高的数据独立性;
    5) 数据的共享性好;
    6) DBMS还提供了数据的控制功能。

  3. 试述文件系统与数据库系统的区别和联系。
    区别:
    1) 文件系统用文件将数据长期保存在外存上,数据库系统用数据库统一存储数据;
    2) 文件系统中的程序和数据有一定的联系,数据库系统中的程序和数据分离;
    3) 文件系统用操作系统中的存取方法对数据进行管理,数据库系统用DBMS统一管理和控制数据;
    4) 文件系统实现以文件为单位的数据共享,数据库系统实现以记录和字段为单位的数据共享。
    联系:
    1) 均为数据组织的管理技术;
    2) 均由数据管理软件管理数据,程序与数据之间用存取方法进行转换;
    3) 数据库系统是在文件系统的基础上发展而来的。

  4. 举出适合用文件系统而不是数据库系统的应用例子,以及适合用数据库系统的应用例子。

  1. 适用于文件系统而不是数据库系统的应用例子:
    数据的备份、软件或应用程序使用过程中的临时数据存储一般使用文件比较合适。早期的功能比较简单,比较固定的应用系统也适用文件系统。

  2. 适用于数据系统而非文件系统的应用例子:
    目前,几乎所有企业或部门的信息系统都以数据库系统为基础,都是用数据库。例如,一个工厂的管理系统(其中会包括许多子系统,如库存管理系统,物资采购系统,作业采购系统,作业调度系统,设备管理系统,人事管理系统等),学校的管理系统,人事管理系统,图书馆的图书管理系统,等等。都适合数据库系统。

  1. 试述数据库系统的特点。
    1) 数据的管理者:DBMS
    2) 数据面向的对象:现实世界
    3) 数据的共享程度:共享性高
    4) 数据的独立性:高度的物理独立性和一定的逻辑独立性
    5) 数据的结构化:整体结构化
    6) 数据控制能力:由DBMS统一管理和控制

  2. 数据库管理系统的主要功能有哪些?
    1) 数据定义: DBMS提供数据定义语言DDL,供用户定义数据库的三级模式结构、两级映像以及完整性约束和保密限制等约束。
    2) 数据操作。DBMS提供数据操作语言DML,供用户实现对数据的追加、删除、更新、查询等操作。
    3) 数据库的运行管理: 数据库的运行管理功能是DBMS的运行控制、管理功能,包括多用户环境下的并发控制、安全性检查和存取限制控制、完整性检查和执行、运行日志的组织管理、事务的管理和自动恢复。
    4) 数据组织,存储与管:DBMS要分类组织、存储和管理各种数据,包括数据字典、用户数据、存取路径等,需确定以何种文件结构和存取方式在存储级上组织这些数据。

  3. 什么是概念模型?试述概念模型的作用。
    1) 概念模型,也称信息模型,是按用户的观点来对数据和信息建模,主要用于数据库设计。
    2) 概念模型实际上是现实世界到机器世界的一个中间层次。概念模型用于信息世界的建模,是现实世界到信息世界的一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户进行交流的语言

  4. 定义并解释概念模型中以下术语:实体,实体型,实体集,实体之间的联系
    1) 实体:客观存在并可相互区别的事物,例如: 人,植物
    2) 实体型:用实体名及其属性名集合来抽象和刻画同类实体称为实体型。
    例如:学生(学号,姓名,专业)
    3) 实体集:同一类型实体的集合称为实体集
    4) 实体之间的联系:现实世界中的事物内部以及事物之间的联系在信息世界反映为实体内部的联系和实体之间的联系

  5. 试述数据模型的概念、数据模型的作用和数据模型的三个要素。
    1) 数据模型是数据库系统中用于提供信息表示和操作手段的形式构架,是现实世界的模拟和抽象。
    2) 数据模型的作用是模拟现实世界,使人容易理解,便于在计算机上实现。
    3) 数据模型三要素:数据结构、数据操作、数据的约束条件。

  6. 试述层次模型的概念,举出三个层次模型的实例。
    1) 在数据库中定义满足下面两个条件的基本层次联系的集合为层次模型:
    (1) 有且只有一个节点没有双亲节点,这个结构称为根节点
    (2) 根以外的其他结点有且只有一个双亲节点。

  1. 层次模型的实例
    (1) 教员学生层次数据库模型
    (2) 行政机构层次数据库模型
    (3) 行政区域层次数据库模型
  1. 试述网状模型的概念,举出三个网状模型的实例。
  1. 满足下面两个条件的基本层次联系集合为网状模型。
    (1) 允许一个以上的结点无双亲;
    (2) 一个结点可以有多于一个的双亲
  2. 实例
    (1)学生选课网状数据库模型
    (2)教师选教室网状数据模型
    (3)学生选 教室网址数据模型
  1. 试述网状、层次数据库的优缺点。
  1. 网状数据库:
    优点:
    (1) 能够更为直接地描述现实世界,如一个节点可以有多个双亲,节点之间可以有多种联系。
    (2) 具有良好的性能,存取效率较高。
    缺点:
    (1) 结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。
    (2) 网状模型的DDL、DML复杂,并且要嵌入某一种高级语言(如COBOL、C)中,用户不容易掌握,不容易使用。
    (3) 由于记录之间的联系是通过存取路径实现的,应用程序在访问数据时必须选择适当的存取路径,因此用户必须了解系统结构的细节,加重了编写应用程序的负担。

  2. 层次数据库:
    优点:
    (1) 层次模型的数据结构比较简单清晰。
    (2) 层次数据库的查询效率高。因为层次模型中记录之间的联系用有向边表示,这种练习在DBMS中常常用指针来实现,因此这种练习也就是记录之间的存取路径。当药存取某个节点的记录值,DBMS就沿着这一条路径很快找到该记录值,所以层次数据库的性能优于关系数据库,不低于网状数据库。
    (3) 层次数据模型提供了良好的完整性支持。
    缺点:
    (1) 现实世界中很多联系都是非层次性的。
    (2) 如果一个节点具有多个双亲节点等,用层次模型表示这类联系就很笨拙,只能引入冗余数据(易产生不一致性)或创建非自然的数据结构(引入虚拟节点)来解决。对插入和产出操作的限制比较多,因此应用程序的编写比较复杂、
    (3) 查询子女节点必须通过双亲节点。
    (4) 由于结构严密,层次命令趋于程序化。

  1. 试述关系模型的概念,定义并解释以下术语:关系,属性,域,元组,码,分量,关系模式
  1. 关系模型的概念:关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
  2. 概念解释
    (1) 关系:一个关系对应通常说的一张表:
    (2) 属性:表中的一列即为一个属性:
    (3) 域:属性的取值范围:
    (4) 元组:表中的一行即为一个元组:
    (5) 码:表中的某个属性或属性组,它可以惟一确定一个元组:
    (6) 分量:元组中的一个属性值:
    (7) 关系模式:对关系的描述,一般表示为关系名(属性1,属性2,…,属性n)
  1. 试述关系数据库的特点。
  1. 相同列中数据类型一致,不同数据类型必须用不同列定义
  2. 不同列无顺序要求
  3. 任意两个元组不能完全相同
  4. 不同行也无顺序区别
  1. 试述数据库系统的三级模式结构,并说明这种结构的优点是什么。
  1. 数据库系统的三级模式结构由外 模式、模式个内模式组成。
  2. 优点:数据库系统的三级模式是对数据的三个抽象级别,它把数据的具体组织留给DBMS管理,使用户能逻辑抽象地处理数据,而不必关心数据在计算机中的表示和存储。为了能够在内部实现这三个抽象层次的联系和转换,数据库系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性
  1. 定义并解释以下术语: 模式,外模式,内模式,数据定义语言,数据操纵语言
  1. 外模式:亦称子模式或者用户模式(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。
  2. 模式:亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。模式描述的是数据的全局逻辑结构。
  3. 内模式:亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
  4. DDL:数据定义语言:用来定义数据库模式、外模式、内模式的语言。
  5. DML:数据操纵语言:用来对数据库中的数据进行查询、插入、删除和修改的语句。
  1. 什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系具有数据与程序的独立性?
  1. 数据与程序的的逻辑独立性:
    当模式改变时(例如增加新的关系,新的属性,改变属性的数据类型等),由数据库管理员对各个外模式/模式的映像做相应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。
  2. 数据于程序的物理独立性:
    当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做响应的改变,可以使模式保持不变,从而应用程序也不必改变,保证了数据与程序的物理独立性,简称数据的物理独立性。
  3. 原因数据库管理系统在三级模式之间提供的两层映像保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性
  1. 试述数据库系统的组成。
    数据库系统一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员和用户构成。
  2. 试述数据库管理员、 系统分析员、数据库设计人员、应用程序员的职责。
  1. 数据库管理员的职责:
    (1) 决定数据库中的信息内容和结构
    (2) 决定数据库的存储结构和存取策略
    (3) 定义数据的安全性要求和完整性约束条件
    (4) 监控数据库的使用和运行
    (5) 数据库的改进和重组、重构
  2. 系统分析员职责:
    系统分析员负责应用系统的需求分析和规范说明,系统分析员要和用户及DBA相结合,确定系统的硬件,软件配置,并参与数据库系统的概要设计。
  3. 数据库设计人员职责:
    数据库设计人员负责数据库中数据的确定,数据库各级模式的设计。数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。在很多情况下,数据库设计人员由数据库管理员担任。
  4. 应用程序员职责:
    应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。

你可能感兴趣的:(数据库)