01 250228

1 试述数据、数据库、数据库管理系统、数据库系统的概念
  • 数据:用于记录信息,数据是信息的载体
  • 数据库:是存储介质上的一个/组文件,不能直接使用,需通过数据库管理系统来操作
  • 数据库管理系统:管理数据库的一种软件系统
  • 数据库系统:基于数据库建立的一种信息系统
    通常由应用程序、数据库、数据库管理系统和用户(数据库管理员、应用系统开发人员、终端用户)组成
2 使用数据库系统有什么好处
  • 实现数据结构化
    • 在数据库中,实现了整体数据的结构化。按照某种数据模型,将各种数据组织到一个结构化的数据库中,整个应用环境内的数据不是一盘散沙,可表示出数据之间的有机关联。
    • 在数据库中,描述数据的时候,不仅要描述数据本身,还要描述数据之间的联系。数据之间的联系通过存取路径来实现,把相关的数据有机地组织在一起。
  • 实现数据共享
    数据库中的数据是考虑所有用户的数据需求、面向整个系统组织的,而不是面向某个具体应用的。因此数据库中包含了所有用户的数据成分,但每个用户通常只用到其中一部分数据。不同用户所使用的数据可以重叠,同一部分数据也可为多用户共享。用户使用的是逻辑文件,因此尽管一个数据可能出现在不同的逻辑文件中,但实际上的物理存储只可能出现一次,减少了数据冗余。
  • 实现数据独立性
    • 物理独立性
      修改数据库的物理存储模式而不必重写应用程序的能力。有时为了提高系统的性能等原因,偶尔会在数据库的物理层做一些修改(比如将数据从光盘上挪到磁盘上),物理独立性可以使应用程序不受影响。
    • 逻辑数据独立性
      修改数据库的逻辑模式而不必重写应用程序的能力。当数据库的逻辑结构发生了变化,逻辑层就需要做一些修改,但可以控制这种修改带来的影响,尽量使应用程序保持稳定
  • 拥有方便的用户接口
    • 通过标准化的非过程式语言SQL,很方便的操纵数据库:数据定义语言(DDL)、数据查询语言(DQL)、数据操纵语言(DML)、数据控制语言(DCL),综合统一,处理数据库所有事务
  • 统一的数据管理与控制功能
    • 实现数据的完整性(数据的正确性、有效性和相容性)
    • 实现数据的安全性
    • 并发控制
      当多个用户同时存取、修改DB中的数据时,可能会发生相互干扰,使DB中数据的完整性受到破坏,而导致数据的不一致性。DB的并发控制防止了这种现象的发生,提高了DB的利用率
3 试述文件系统与数据库系统的区别和联系
  • 文件系统的数据面向某一应用,数据共享性差,冗余度大,独立性差,虽然记录内有结构,但无整体结构。
  • 数据库系统的数据面向平台系统(如一个企业、跨国公司等),数据共享性高,冗余度小,具有高度的物理独立性和一定的逻辑独立性,整体结构化,用数据模型描述
4 举出适合用文件系统而不是数据库系统的应用例子,以及适合用数据库系统的应用例子

适合用文件系统的应用例子: 数字化图书馆的电子书存储系统

  • 场景描述: 某数字化图书馆需要存储大量的电子书文件,这些文件包括PDF、EPUB、MOBI等多种格式,每本书的大小从几MB到几百MB不等。
  • 原因:
    • 大文件存储: 电子书文件较大,文件系统可以直接存储这些大文件,无需分割,便于管理和访问。
    • 简单检索: 图书馆用户通常通过书名、作者等基本信息进行检索,文件系统可以配合简单的目录结构或索引文件实现快速检索。
    • 成本效益: 使用文件系统可以避免数据库系统的复杂配置和许可成本,对于主要以文件存储和基本检索为主的图书馆系统来说,文件系统更为经济实用。

适合用数据库系统的应用例子: 在线银行交易系统

  • 场景描述: 某在线银行提供网上银行服务,用户可以通过该系统进行转账、支付、查询余额等操作。
  • 原因:
    • 复杂数据结构: 银行系统需要管理用户账户、交易记录、账户余额等多种类型的数据,这些数据之间存在复杂的关系,如账户与交易记录之间的关联。
    • 并发控制: 在线银行系统可能同时有大量用户进行交易操作,数据库系统可以有效地处理并发访问,保证数据的一致性和完整性。
    • 数据安全性: 银行数据涉及用户隐私和资金安全,数据库系统提供了数据加密、访问控制等安全机制,可以保护数据不被非法访问和篡改。
5 试述数据库系统的特点
  • 数据结构化
    • 在文件系统阶段,只考虑了同一文件记录内部数据项之间的联系,而不同文件的记录之间是没有联系的,也就是说,从整体上看数据是无结构的。
    • 在数据库中,实现了整体数据的结构化。按照某种数据模型,将各种数据组织到一个结构化的数据库中,整个应用环境内的数据不是一盘散沙,可表示出数据之间的有机关联。
    • 在数据库中,描述数据的时候,不仅要描述数据本身,还要描述数据之间的联系。数据之间的联系通过存取路径来实现,把相关的数据有机地组织在一起。
  • 数据共享
    • 数据库中的数据是考虑所有用户的数据需求、面向整个系统组织的,而不是面向某个具体应用的。因此数据库中包含了所有用户的数据成分,但每个用户通常只用到其中一部分数据。不同用户所使用的数据可以重叠,同一部分数据也可为多用户共享
    • 在数据库方式下,用户不是自建文件,而是取自数据库中的某个子集,它并非独立存在,而是靠DBMS从数据库中映射出来的,所以叫做逻辑文件。如图所示,用户使用的是逻辑文件,因此尽管一个数据可能出现在不同的逻辑文件中,但实际上的物理存储只可能出现一次,减少了数据冗余。
  • 数据独立性
    • 数据独立性是指数据库中的数据与应用程序之间不存在依赖关系,而是相互独立的。
    • 包括物理独立性和逻辑独立性
      • 物理独立性
        是指修改数据库的物理存储模式而不必重写应用程序的能力。有时为了提高系统的性能等原因,偶尔会在数据库的物理层做一些修改(比如将数据从光盘上挪到磁盘上),物理独立性可以使应用程序不受影响。
      • 逻辑数据独立性
        是指修改数据库的逻辑模式而不必重写应用程序的能力。当数据库的逻辑结构发生了变化,逻辑层就需要做一些修改,但可以控制这种修改带来的影响,尽量使应用程序保持稳定
  • 方便的用户接口
    • 通过标准化的非过程式语言SQL,很方便的操纵数据库:数据定义语言(DDL)数据查询语言(DQL)数据操纵语言(DML)数据控制语言(DCL),综合统一,处理数据库所有事务
    • 交互式和嵌入式相结合
      • 独立使用:联机交互的方式,直接操作数据库
      • 嵌入式:可以嵌入到高级编程语言中,使得应用程序能够操作数据库
  • 统一的数据管理与控制功能
    • 数据的完整性
      数据的完整性指数据的正确性、有效性和相容性。实际上,是指数据库中的数据应与现实世界中的实际情况相符。为了保证DB的正确性,要使用数据库系统提供的存取方法设计一些完整性规则,对数据值进行校验
    • 数据的安全性
    • 并发控制
      当多个用户同时存取、修改DB中的数据时,可能会发生相互干扰,使DB中数据的完整性受到破坏,而导致数据的不一致性。DB的并发控制防止了这种现象的发生,提高了DB的利用率
6 数据库管理系统的主要功能
  • 数据定义功能
  • 数据组织、存储、管理功能
  • 数据操纵功能
  • 数据库事务管理和运行管理
  • 数据库的建立与维护…
15 试述数据库系统的三级模式结构,并说明这种结构的优点是什么

数据库系统的三级模式结构指数据库系统中的数据组织结构分为三个层次:外模式(用户层)、模式(逻辑层)、内模式(物理层)。这种结构也被称为三级模式或三层架构。

优点
  1. 数据独立性
    • 逻辑独立性:概念层将内部层的存储细节与外部层的应用程序隔离开,使得可以在不影响应用程序的情况下修改数据库的逻辑结构。
    • 物理独立性:内部层的修改(如存储方式或存储设备的改变)不会影响到概念层和外部层,从而保证了数据存储的灵活性。
  2. 简化开发
    • 开发人员可以专注于逻辑层的数据库设计,而不需要关心底层的存储细节。
    • 用户和应用程序可以通过外部层定制化的视图来访问数据,简化了数据访问的复杂性。
  3. 提高安全性
    • 通过外部层可以为不同的用户或角色提供不同的数据视图,实现了数据访问的控制和隔离。
    • 限制了用户直接访问底层存储,减少了数据被非法访问或篡改的风险。
  4. 灵活性和可扩展性
    • 三级模式结构使得数据库系统可以灵活地适应不同的应用需求和数据变化。
    • 方便了数据库的扩展和维护,可以在不影响现有系统的情况下添加新的数据类型或修改数据结构。
16 定义并解释以下术语:模式、外模式、内模式、数据定义语言、数据操纵语言
外模式--用户层
  • 定义:外模式(也称子模式或用户模式)是数据库用户(包括应用程序员和最终用户)使用的局部数据的逻辑结构和特征的描述。外模式是基于数据视图(View)实现。视图(View)是与某一应用有关的数据的逻辑表示
  • 解释:一个数据库可以有多个外模式。反映了不同的用户的应用需求、看待数据的方式、对数据保密的要求。外模式与应用的关系为一对多。同一外模式也可以为某一用户的多个应用系统所使用,,但一个应用程序只能使用一个外模式。
模式(概念模式)--逻辑层
  • 定义:模式是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,综合了所有用户的需求
  • 解释:一个数据库只有一个模式,模式是数据库系统模式结构的中间层,与数据的物理存储细节和硬件环境无关,与具体的应用程序、开发工具及高级程序设计语言无关
内模式--物理层
  • 定义:内模式(也称存储模式)是数据物理结构和存储方式的描述,也是数据在数据库内部的表示方式
  • 解释
    • 数据在数据库内部的表示方式包括:
      • 记录的存储方式(顺序存储,按照B树结构存储,按hash方法存储等等)
      • 索引的组织方式
      • 数据是否压缩存储
      • 数据是否加密
      • 数据存储记录结构的规定
    • 一个数据库只有一个内模式
数据定义语言
  • 定义: 数据定义语言是一类用于定义和修改数据库结构的语句。它主要负责创建、修改和删除数据库中的各种对象,如表格、视图、索引、存储过程等。
  • 解释: DDL语句是数据库设计和管理的基础。它们不涉及数据的实际内容,而是关注数据的存储方式、数据之间的关系以及数据的完整性约束等。常见的DDL语句包括:
数据操纵语言(Data Manipulation Language,DML)
  • 定义: 数据操纵语言是一类用于查询和修改数据库中数据的语句。它主要负责数据的检索、插入、更新和删除操作。
  • 解释: DML语句是数据库日常操作的核心。它们允许用户与数据库进行交互,执行各种数据操作。常见的DML语句包括:
17 什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性

数据与程序的物理独立性: 数据与程序的物理独立性指应用程序与数据库中数据的具体物理存储细节相隔离。也就是说,应用程序不需要知道数据在磁盘上如何存储、如何索引或如何分区等细节。这种独立性允许数据库管理员在不影响应用程序的情况下优化数据的存储方式,如改变存储结构、使用不同的存储介质或调整索引策略。应用程序通过数据库管理系统(DBMS)提供的接口与数据交互,而不直接操作物理存储。

数据与程序的逻辑独立性:数据与程序的逻辑独立性指的是应用程序与数据库的逻辑结构相隔离。逻辑结构包括表的结构、视图、数据之间的关系等。这种独立性允许在不修改应用程序的情况下对数据库的逻辑结构进行修改,如添加或删除字段、重新组织表或创建新的视图。应用程序依赖于数据库的逻辑视图,而不是具体的表结构。

为什么
因为有外模式/模式映象和模式/内模式映像

  • 外模式/模式映象:当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性
  • 模式/内模式映象:当数据库的存储结构改变了(例如选用了另一种存储介质),数据库管理员修改模式/内模式映象,使模式保持不变,应用程序不受影响。保证了数据与程序的物理独立性
18 试述数据库系统的组成

数据库系统通常由应用程序、数据库、数据库管理系统和用户组成

  • 数据库管理系统由查询处理器、存储管理器、安全管理器等组成
  • 用户分为
    • 数据库管理员:负责安装数据库管理系统,通过数据库管理系统维护数据库,制定和执行安全策略、备份恢复策略和调优策略等,保障系统平稳高效运行
    • 应用系统开发人员:设计和开发数据库应用系统,主要(在应用程序代码中)通过DML语言使用数据库中的数据
    • 终端用户:使用数据库系统完成特定业务。主要通过应用程序人机界面访问操作数据库,不需要具备数据库知识。
Built with MDFriday ❤️