fndurwa073

博客园 首页 新随笔 联系 订阅 管理

*写在文前:本文为不定时完善的学习笔记,内容来源广泛,仅供学习交流,相关版权(若存在)则归原作者所有,部分来源将在文中标明,禁止用于任何商业用途。

*声明:文中给出的代码、解决方案和介绍等 往往 并非最优,源于个人学习,不定时更新完善,也鼓励读者多多思考,提出质疑,出现问题请在评论区指出 并 宽容看待,本人会不定期修正,感谢您的理解。

壹、数据库的4个基本概念

一、数据(data)

数据库中存储的基本对象 自然是写到名字中的“数据”,而这里的“数据”不只是数字,也可以是图片、声音、视频等等。

描述事物的符号记录都可被称为数据

二、数据库(DB)

存储珍贵数据的“仓库”,它特点可以概括为:

1、永久储存:不会轻易丢失,可长期存储

2、有组织:以一定方式存储,保证使用便捷的同时避免数据不必要重复存储以减少整体大小(即较小冗余),且拥有不完全依赖应用程序的独立性等。

3、可共享:可供多方、多程序共同拥有,甚至同时使用(并发),以方便扩充的同时避免数据的重复存储(即避免不必要冗余)。

三、数据库管理系统(DBMS)

管理数据库的一套系统,包括软件和操作语言。它们能提供包括:数据定义、数据组织/存储和管理、数据操纵、数据库的事务管理和运行管理以及数据库的建立和维护等。

在学习数据库的过程中我们就将扮演 借助数据库管理系统操作数据库的“数据库管理员”,而数据库管理系统自然也就是我们将要着重学习的工具

四、数据库系统(DBS)

也就是对 数据库、数据库管理系统、应用程序和数据库管理员(即操作员) 组成的运维系统的称呼。

贰、数据模型

数据模型是对现实世界数据特征的抽象,是一种能比较真实地模拟世界、容易为人所理解且便于在计算机上实现的模型的统称。具体介绍请见下。

概念引入-型与值:

指对某一类数据的结构和属性的说明。
是型的一个具体赋值。

一、概念模型(定义简介)

按用户的观点来对数据和信息建模,用于数据库设计为主(E-R图(即实体-联系图) 等,此部分详见“数据库设计”)。

概念引入-概念模型中 相关部分:
实体客观存在并可相互区别的事物。(如:某一个学生是一个实体)
属性实体所具有的某一特性。(如:学生实体往往有姓名这一属性)
码(或称键)唯一标识实体的属性集(所有码都是备选码,可从中自定一个主码以便于查找等)。(如:每个人都可以有且有不重复的身份证号等)
实体型实体名及其属性名集合来抽象和刻画同类实体(是对这类结构和属性的说明,类似于自定的一个格式模板)。(如:如学生作为实体型,可以由“学生”-实体名、“姓名”-属性名、“性别”-属性名,等等结合组成。)
实体集同一类型实体的集合。(如:一个个单独的学生实体同属于“学生”这一实体集)
联系实体内部通常指 属性之间的联系,实体之间通常指 不同实体集之间的联系。(如:“学生”实体集与“老师”实体集之间的联系)

二、逻辑模型(模型较多,仅列举3个常用)

*1层次模型(类似 树 的结构):【*不适用多对多联系的描述】

有且只有一个结点(根节点)没有双亲结点根以外其他结点有且只有一个双亲结点

*2网状模型(允许结点任意互连):【*库越大越复杂,越难使用】

允许一个以上的结点无双亲一个节点可以有多于一个的双亲

3关系模型(最常用,往往用二维表存储关系):【*查询效率相对较低】
概念的引入-逻辑模型中 相关部分:
关系一个关系对应通常说的一张表。(其每个分量都必须是一个不可分的数据项,使关系表达完整但不包含多余数据)
元组表中的一行。(往往也就是一条数据)
属性表中的一列,每个属性都有一个属性名。(如:定义学生实体型中可以有姓名属性等)
码(或称键)可唯一确定一个元组的表中属性组。(如:定义每个学生都有且有不重复的身份证号属性 或 多个属性组合成可满足条件的属性组等)【更多具体介绍见下一章笔记】
一组具有相同数据类型的值的集合,即属性的取值范围。(如:定义一个年龄属性,其取值范围可以是1~90等)
分量元组中的一个属性值。(是指某一条数据中的一个属性的具体值)
关系模式对关系的描述

(从用户观点看)由一组关系(每个关系都是一张规范化的二维表)组成。

为保证关系模型的正常、稳定,避免出现数据的损坏影响查找。我们在对关系模型数据库进行查询、插入、删除和更新数据这类操作的时候,就要注意一些规范了。而这个规范就被称为:

关系模型完整性约束条件:
  1. 实体完整性:元组中所有主属性(即主码中涉及的所有属性)都应完整,属性不空缺。
  2. 参照完整性:关系中 参照中的数据要能与被参照中的数据相互对应,参照不对空。
  3. 用户定义的完整性:你(操作者)为达到一定合理效果而自行定义的约束,联系不非法。

叁、E-R图(实体-联系图)

一、介绍

实体-联系图,就是一种以相对直观的图画形式,展现并描述实体与实体间联系的一种方式。

*注:通过E-R图描述 关系 时应经过 联系结点(哪怕是描述实体集内部关系也同要)。

基本要素描绘方式:

实体集:▭(用方框表示,内部填写实体名)

属性:◯(用椭圆表示,内部填写属性名)

联系:◊(用菱形表示,内部填写联系名)

它们用“—”直线相连(直线边应写上代表其中联系的特点,如:对多则用n、m等表示,对单则用1表示。

二、两个简单的E-R图:(并不完整,仅用于简单示意)

1、实体集与实体集间的联系:

(一个带有一个属性的实体集与另一个带有两个属性的实体集产生 一对多的联系

2、实体集内部联系:

(一个带有一个属性的实体集与自身内部产生 一对多/多对一 联系(双线))

!肆、数据库系统的三级模式结构

一、介绍

二映像三级模式示意图

数据库系统的二级映像三级模式结构,是我们需要了解的重要结构,以下是相关概念的具体介绍:

二、三模式

模式也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图不涉及数据的物理存储细节和硬件环境与数据库管理系统无关
外模式也称子模式/用户模式,是所有用户都能看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某应用有关的数据的逻辑表示。
内模式也称存储模式,一个数据库只有一个。是数据物理结构和存储方式的描述,是数据在数据库内部的组织方式。

三、二级映像

两层映像即:外模式/模式映像 和 模式/内模式映像,它们使得数据库中那个的数据拥有较高逻辑独立性和物理独立性,下面是相关介绍,清结合上方示意图理解:

1、外模式/模式映像

应对场景:模式或外模式改变

作用:在需要改变模式或外模式时,只需改变映像(类似改变映射的对应关系)即可在模式改变时保持外模式不变 或 外模式改变而不必改变模式,而应用又是根据外模式编写且只与之对应的,所以大幅减少了协调难度和工作量,使两者相对独立,即:保证了数据与程序的逻辑独立性

2、模式/内模式映像

应对场景:数据库的存储结构改变

作用:在改变数据库存储结构(包括但不限于改变本文提到的数据模型等)时,只需改变模式/内模式映像(类似改变映射的对应关系)即可保持模式不必改变 或 模式改变时内模式不必改变。而在内模式之上模式的存在又隔绝了应用与数据的直接联系,即保证了数据与程序的物理独立性

四、概括:

拥有二级映像三模式结构的数据库系统就可以保证在修改 模式、外模式、内模式 其中任何一者时都只需要改变映像和改动本身即可,而不必牵连改变应用 或 数据库等,同时也提高了数据库系统的安全性和稳定性,便于管理和维护。


本章结束,感谢阅读。

参考资料:

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

posted on 2023-09-10 20:09  fudnixe27  阅读(11)  评论(0编辑  收藏  举报  来源