第一章绪论

基本知识点

    本章阐述了数据库的基本概念,介绍了数据管理技术的进展、数据库技术产生和发展的背景,数据库系统的组成。

    学习本章的重点在于将注意力放在基本概念和基本知识的把握方面,从而为以后各个章节的学习打下扎实的基础,

    对所涉及的知识点进行如下分类:

    ①需要了解的:了解数据管理技术的产生和发展过程、数据库系统的优点、层次数据模型及网络数据模型的基本概念、数据库系统的组成、数据库管理员(DBA)的职责等。   

1.1.1数据库技术的发展

    数据库技术是应数据管理任务的需求而产生的,随着计算机技术的发展,对数据管理技术也不断地提出更高的要求,其先后经历了人工管理、文件系统和数据库系统3个阶段,下面分别进行介绍。

    1.人工管理阶段

    20世纪50年代中期以前,计算机主要用于科学计算。当时硬件和软件设备都很落后,数据基本依赖于人工管理。人工管理阶段具有以下特点。

    (1)数据不保存。

    (2)使用应用程序管理数据。

    (3)数据不共享。

    (4)数据不具有独立性。

    2.文件系统管理

    20世纪50年代后期到20世纪60年代中期,硬件和软件技术都有了进一步发展,有了磁盘等存储设备和专门的数据管理软件(即文件系统)。该阶段具有如下特点。

    (1)数据可以长期保存。

    (2)由文件系统管理数据。

    (3)共享性差,数据冗余大。

    (4)数据独立性差。

    3.数据库系统阶段

    20世纪60年代中期依赖,计算机应用于管理系统,而且规模越来越大,应用越来越广泛,数据量急速增长,对共享功能的要求越来越强烈,这样使用文件系统管理已经不能满足要求,于是出现了数据库管理系统来统一管理数据。数据库系统的出现,满足了多用户、多应用共享数据的需求,比文件系统具有明显的优点,标志着数据管理技术的飞跃。

表1.1    数据管理三个阶段的比较



人工管理阶段文件系统阶段数据库系统阶段




应用背景科学计算科学计算、数据管理大规模数据管理
硬件背景无直接存取存储设备磁盘、磁鼓大容量磁盘、磁盘阵列
软件背景没有操作系统有文件系统有数据库管理系统
处理方式批处理联机实时处理、批处理联机实时处理、分布处理、批处理





数据的管理者用户(程序员)文件系统数据库管理系统
数据面向的对象某一应用程序某一应用现实世界(一个部门、企业、跨国组织等)
数据的共享程度无共享共享性差,冗余度大共享性高;冗余度小
数据的独立性不独立,完全依赖于程序独立性差具有高度的物理独立性和一定的逻辑独立性
数据的结构化无结构记录内有结构、整体无结构整体结构化,用数据模型描述
数据控制能力应用程序自己控制应用程序自己控制有数据库管理系统提供数据安全性、完整性、并发性控制和恢复能力

1.1.2数据库系统的特点(优点)

    (1)数据结构化。数据库系统实现整体数据的结构化,这是数据库系统与文件系统的本质区别。

    注意这里的“整体”两个字。在数据库系统中,数据不再仅仅针对某一个应用,而是面向全组织,可以支持许多应用;不仅数据内部是结构化的,而且数据之间是具有联系的,整体是结构化的。

    (2)数据的共享性高,冗余度低,易扩充。数据库的数据可以被多个用户、多个应用,用多钟不同的程序设计语言共享使用,而且容易增加新的应用,这就使得数据库系统易于扩充,称之为“弹性大”。数据共享可以大大减少数据冗余,节约存储空间,同时还能够避免数据之间的不相容性与不一致性。

    所谓“弹性大”是指应用系统容易扩充也容易收缩,即应用增加或减少不必修改整个数据库的结构,或者只要做很少的修改。我们可以取整体数据的各种子集用于不同的应用系统,当应用需要改变或增加时,只要重新选取不同的子集或加上一部分数据便可满足新的需求。

    (3)数据独立性高。数据独立性包括数据的物理独立性和数据的逻辑独立性。

    所谓“独立性”即相互不依赖。数据独立性是指数据和程序相互不依赖。即数据的逻辑结构或物理结构改变了,程序不会跟着改变。数据域程序的独立吧数据的定义从程序中分离出去,加上数据的存取又由DBMS负责,简化了应用程序的编制,大大减少了应用程序的维护和修改。

    (4)数据由DBMS统一管理和控制。数据库的共享是并发的共享,即多个用户可以同时存取数据,库中的数据甚至可以同时存取数据中的同一个数据。为此,DBMS必须提供统一的数据控制功能,包括:

    ●   数据的安全性保护:保护数据以防止不合法的使用造成的数据泄密和破坏;

    ●   数据的完整性检查:将数据控制在有效的范围内或保证数据之间满足一定的关系,一定的约束条件;

    ●   并发控制:对多用户的并发操作加以控制和协调,保证并发操作的正确性;

    ●   数据库恢复:当计算机系统发生硬件故障、软件故障,或者由于操作员的失误以及故意的破坏影响数据库中数据的正确性,甚至造成数据库部分或全部数据的丢失时,能将数据库从错误状态恢复到某一已知的正确状态,亦称为完整状态或一只状态。

1.1.3数据模型

    数据模型是数据库系统的核心与基础,是关于描述数据与数据之间的联系、数据的定义、数据一致性约束的概念性工具的集合。

    数据模型通常是由数据结构、数据操作和完整性约束3部分组成的,分别如下。

    (1)数据结构:是对系统静态特征的描述,描述对象包括数据的类型、内容、性质和数据之间的相互关系。

    (2)数据操作:是对系统动态特征的描述,是对数据库各种对象实例的操作。

    (3)完整性约束:是完整性规则的集合,它定义了给定数据模型中数据及其联系所具有的约束和依存规则。

    层次模型(层次数据模型)

    层次模型:用树状结构表示实体类型及实体间联系的数据模型称为层次模型,如图1.1所示。它具有以下特点。

    (1)每棵树有且仅有一个无双亲结点,称为根。

    (2)树中除根外所有结点有且仅有一个双亲。

QQ图片20201123175859.png

图1.1    层次模型

    网状模型(网状数据模型)

    网状模型:用有向图结构表示实体类型及实体间联系的数据模型称为网状模型,如图1.2所示。用网状模型编写应用程序极其复杂,数据的独立性较差。

QQ图片20201123180807.png

图1.2    网状模型

    关系模型(关系数据模型)

    关系模型:以二维表来描述数据。关系模型中,每个表有多个字段列和记录列,每个字段列有固定的属性(数字、字符、日期等),如图1.3所示。关系模型数据结构简单、清晰、具有很高的数据独立性,是目前主流的数据库数据模型。

    关系模型的基本术如下。

    (1)关系:一个二维表就是一个关系。

    (2)元组:二维表中的一行,即表中的记录。

    (3)属性:二维表中的一列,用数据和值表示。

    (4)域:每个属性取值的变化范围,如性别的域为{男,女}。

    (5)码:表中的某个属性值,它可以唯一确定一个元组。

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

    (7)关系模型:对关系的描述,一般表示为

                    关系名(属性1,属性2,……,属性n)

    关系中的数据约束如下。

    (1)实体完整性约束:约束关系的主键中属性值不能为空值。

    (2)参照完整性约束:关系之间的基本约束。

    (3)用户定义的完整性约束,反映了具体应用中数据的语义要求。

学生信息表

学生姓名

年级

家庭住址

张三

2000

成都

李四

2000

北京

王五

2000

上海

学生成绩表


学生姓名

课程

成绩

张三

数学

100

张三

物理

95

张三

社会

90

李四

数学

85

李四

社会

90

王五

数学

80

王五

物理

75

图1.3    关系模型


1.1.4数据库系统的组成

    数据库系统(Database System,DBS)是采用数据库技术的计算机系统,是由数据库(数据)、数据库管理系统、数据库管理员(人员)、支持数据库系统的硬件和软件(应用开发工具、应用系统等)以及用户5部分构成的运行实体,如图1.4所示。其中,数据库管理员(Database Administrator,DBA)是对数据库进行规划、设计、维护和监视等的专业管理人员,在数据库系统中起着非常重要的作用。

QQ图片20201123183346.png

图1.4    数据库系统的组成

1.1.5数据库管理员(DBA)的职责

    数据库管理员全面负责管理和控制数据库系统。具体职责包括:

    (1)决定数据库的信息内容和结构;

    (2)决定数据库的存储结构和存取策略;

    (3)定义数据的安全性要求和完整性约束条件;

    (4)监控数据库的使用和运行;

    (5)数据库系统的改进和重组重构。


    ②需要牢固掌握的:掌握概念模型的基本概念、关系数据模型的相关概念、数据库系统三级模型和两级映像的体系结构、数据库系统的逻辑独立性和物理独立性等。

1.2.1概念模型

    概念模型实际上是现实世界到机器世界的一个中间层次。

    概念模型用于信息世界的建模,是现实世界到信息世界的第一层抽象,是数据库设计人员进行数据库设计的有力工具,也是数据库设计人员和用户之间进行交流的语言,因此概念模型一方面应该具有较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识,另一方面它还应该简单、清晰、易于用户理解。

    信息世界主要涉及以下一些概念。

    (1)实体(entity)

    客观存在并可相互区别的事物称为实体。实体可以是具体的人、物、事,也可以是抽象的概念或联系,例如,一个职工、一个学生、一个部门、一门课、学生的一次选课、部门的一次订单、教师与院系的工作关系(即某位教师在某院系工作)等都是实体。

    (2)属性(attribute)

    实体所具有的某一特性称为属性。一个实体可以有若干个属性来刻画。例如,学生实体可以由学号、姓名、性别、出生日期、所在院系、入学时间等属性组成,属性组合(201815121,张三,男,199505,计算机系,2018)即代表了一个学生。

    (3)码(key)

    唯一标识实体的属性集称为码。例如学号是学生实体的码。

    (4)实体型(entity type)

    具有相同属性的实体必然具有共同的特征和性质。用实体名及其属性名集合来抽象和刻画同类实体,称为实体型。例如,学生(学号,姓名,性别,出生年月,所在院系,入学时间)就是一个实体型。

    (5)实体集(entity set)

    同一类型实体的集合称为实体集。例如,全体学生就是一个实体集。

    (6)联系(relationship)

    在现实世界中,事物内部以及事物之间是由联系的,这些联系在信息世界中反馈为实体(型)内部的联系和实体(型)之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系

    实体之间的联系有一对一、一对多和多对多等多种类型

1.2.2关系数据模型

    补充1.3数据模型:

表2.1    数据模型优缺点


层次模型网状模型关系模型










①层次模型的数据结构比较简单清晰。



②层次数据库的查询效率高。





①能够更为直接地描述现实世界。



②具有良好的性能,存取效率高。

①关系模型与格式化模型不同,它是建立在严格的数学概念上的。

②关系模型的概念单一。无论实体还是实体之间的联系都用关系来表示。对数据的检索和更新结果也是关系(即表)。所以其数据结构简单、清晰,用户易懂易用。

③关系模型的存取路劲对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程序员的工作和数据库开发建立的工作。





①现实世界中许多联系是非层次的,如结点之间具有多对多联系,不适合用层次模型表示。

②如果一个结点具有多个双亲结点等,用层次模型表示这类联系就很笨拙,只能通过引入冗余数据(易产生不一致性)或创建非自然的数据结构(引入虚拟结点)来解决。对插入和删除操作的限制比较多,因此应用程序的编写比较复杂。

③查询子女结点必须通过双亲结点。

④由于结构严密,层次命令趋于程序化。

①结构比较复杂,而且随着应用环境的扩大,数据库的结构就变得越来越复杂,不利于最终用户掌握。

②网络模型的DDL、DML复杂,并且要嵌入某一种高级语言中。用户不容易掌握,不容易使用。

③由于记录之间的联系是通过存取路劲实现的,应用程序在访问数据时必须选择适当的存取位置,因此用户必须了解系统结构的细节,加重了编写应用程序的负担。

①由于存取路径岛屿用户是隐蔽的,查询效率往往不如格式化数据模型。

②为了提高性能,数据库管理系统必须到用户的查询请求进行优化,因此增加了开发数据库管理系统的难度。

1.2.3数据库系统三级模式

    模式(schema)

    模式也称逻辑模式,是数据库中安全数据的逻辑结构和特征的描述,是所有用户的公共数据视图。它是数据库系统模式结构的中间层,即不涉及数据的物理存储细节和硬件环境,又与具体的应用程序、所使用的应用开发工具及高级程序设计语言无关。

    模式实际上是数据库数据在逻辑级上的视图。一个数据库只有一个模式。数据库模式以某一种数据模型为基础,统一综合地考虑了所有用户的需求,并将这些需求有机地结合成一个逻辑整体。定义模式时不仅要定义数据的逻辑结构,例如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等;而且要定义数据之间的联系,定义与数据有关的安全性、完整性要求。

    数据库管理系统提供模式数据定义语言(模式DLL)来严格地定义模式。

    外模式(external schema)

    外模式也称子模式(subschema)或用户模式,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示

    外模式通常是模式的子集。一个数据库可以有多个外模式。由于它是各个用户的数据视图,如果不同的用户在应用需求、看待数据的方式、对数据保密的要求等方面存在差异,则其外模式描述就是不同的。即使对模式中同一数据,在外模式中的结构、类型、长度、保密级别等都可以不同。另一方面,同一外模式也可以为某一用户的多个应用系统所使用,但是一个应用程序只能使用一个外模式

    外模式是保证数据库安全性的一个有力措施。每个用户只能看见和访问所对应的外模式中的数据,数据库中的其余数据是不可见的。

    数据库管理系统提供外模式数据定义语言(模式DDL)来严格地定义外模式。

    内模式(internal scheme)

    内模式也称存储模式(storage schema),一个数据库只有一个内模式。它是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式

1.2.4数据库的两级映像体系结构(三级模式之间的映射)

    为了能够在内部实现数据库的3个抽象层次的联系和转换,数据库管理系统在三级模式之间提供了两层映射,分别为外模式/模式映射和模式/内模式映射,下面分别介绍。

    外模式/模式映射

    对于同一个模式可以有任意多个外模式。对于每一个外模式,数据库系统都有一个外模式/模式映射。当模式改变时,由数据库管理员对各个外模式/模式映射做相应的改变,可以使外模式保持不变。这样,依据数据外模式编写的应用程序就不用修改,保证了数据与程序的逻辑独立性。

    模式/内模式映射

    数据库中只有一个模式和一个内模式,所有模式/内模式映射是唯一的,它定义了数据库的全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变时,有数据库管理员对模式/内模式映射做相应改变,可以使模式保持不变,应用程序相应也不做变动。这样,保证了数据与程序的物理独立性。


1.3.1补充习题

1.选择题

(1)数据库系统的核心和基础是(    )。

A.物理模型    B.概念模型    C.数据模型    D.逻辑模型

(2)实现将现实世界抽象为信息世界的是(    )。

A.物理模型    B.概念模型    C.关系模型    D.逻辑模型

(3)数据管理技术经历了若干阶段,其中人工管理阶段和文件系统阶段相比文件系统的一个显著优势是(    )。

A.数据可以长期保存    B.数据共享性很强    C.数据独立性很好    D.数据整体结构化

(4)能够保证数据库系统中的数据具有较好的逻辑独立性的是(    )。

A.外模式/模式映像    B.模式    C.模式/内模式映像    D.外模式

(5)IBM公司的IMS数据库管理系统采用的数据模型是(    )。

A.层次模型    B.网状模型    C.关系模型    D.面向对象模型。

(6)DBMS是一类系统软件,它是建立在下列哪种系统之上的?(    )

A.应用系统    B.编译系统    C.操作系统    D.硬件系统

(7)关于网状数据库,以下说法正确的是(    )。

A.只有一个节点可以无双亲            B.一个节点可以有多于一个的双亲

C.两个节点之间只能有一种联系     D.每个节点有且只能有一个双亲

(8)下列说法中,正确的是(    )。

A.数据库的概念模型与具体的DBMS有关。

B.三级模式中描述全体数据的逻辑结构和特征的是外模式。

C.数据库管理员负责设计和编写应用程序的程序模块。

D.从逻辑模型到物理模型的转换一般是由DBMS完成的。

(9)长期存储在计算机内,有组织的、可共享的大量数据的集合是(    )。

A.数据(Data)                        B.数据库(DataBase)

C.数据库管理系统(DBMS)    D.数据库系统(DBM)

(10)在数据管理技术发展过程中,需要应用程序管理数据的是(    )。

A.人工管理阶段    B.人工管理阶段和文件管理阶段

C.文件系统阶段和数据库系统阶段    D.数据库系统阶段

2.判断题

(1)在文件系统管理阶段,由文件系统提供数据存取方法,所以数据已经达到很强的独立性。(    )

(2)通常情况下,外模式是模式的子集。(    )

(3)数据库管理系统是指在计算机系统中引入数据库后的系统,一般由DB、DBS、应用程序和DBA组成。(    )

(4)在数据模式的组成要素中,数据结构是刻画一个数据模型性质最重要的方向,人们通常按照数据结构的类型来命名数据模型。(    )

(5)数据库系统的三级模式是对数据进行抽象的3个级别,把数据的具体组织留给DBMS管理。(    )

(6)层次模型是比网状模型更具普遍性的结构,网状模型是层次模型的一个特例。(    )

3.填空题

(1)数据库系统的逻辑模型按照计算机的观点对数据建模,主要包括                                    、面向对象模型、对象关系模型和半结构化数据模型等。

(2)最经常使用的概念模型是            

(3)数据独立性是数据库领域的重要概念,包括数据的            独立性和数据的            独立性。

(4)数据库系统的三级模式结构是指数据库系统是由                                     级构成。

(5)两个实体性之间的联系可以分为三种:一对一联系、                       

(6)数据库管理系统提供的数据控制方面的功能包括数据的            保护、数据的            检查、            和数据库恢复。

(7)数据库的三级模式结构中,描述局部数据的逻辑结构和特征的是            

(8)层次模型和网状模型中的单位是基本层次联系,这是指两个            以及它们之间的            (包括一对一)的联系。

(9)数据模型的组成要素中描述系统的静态特性和动态特性的分别是                        

4.问答题

*(1)试述数据管理的文件系统阶段和数据库系统阶段“数据独立性”有何不同。

 (2)叙述使用文件系统管理数据的缺点。

1.3.2补充习题答案

购买或注册会员即可查看。

已注册会员点击登录


参考文献:

[1]王珊,萨师煊.数据库系统概论(第五版)[M]. 北京:高等教育出版社, 2014.

[2]王珊,张俊.数据库系统概论(第五版)习题解析与实验指导[M]. 北京:高等教育出版社, 2015.

[3]明日科技.MySQL从入门到精通[M]. 北京:清华大学出版社, 2017.

#转载请注明出处!
支付1元或购买VIP会员后,才能查看本内容!立即支付升级会员查询订单
快来制作你的简历吧 ,请猛戳这里→点击在线制作
宝塔服务器面板,一键全能部署及管理,送你3188元礼包。请猛戳这里→点我领取

本文标题:《第一章绪论》作者:xuanzhe
原文链接:https://blog.xuanzhe.club/?id=25
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

上一篇: Rabin密码体制

相关文章

bulu bulu 发布于 2020-11-24 18:25:03  
#cmt7
^-^ 回复
发表评论:
验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

你好,朋友

真是美好的一天!

访客信息

  • IP: 3.146.221.204
  • 地点: United StatesOhioDublin

标签列表

站点信息

  • 文章总数:69
  • 页面总数:2
  • 分类总数:19
  • 标签总数:34
  • 评论总数:7
  • 浏览总数:147010
您好,欢迎到访网站!
忘记密码

网站分类

文章归档

歌曲 - 歌手
0:00