数据库系统概述 第一章绪论

本文阅读 19 分钟
首页 Linux,系统 正文

1.数据(Data)

数据是数据库中存储的基本对象

<font size="4">数据是信息的载体,它会代表一定的信息,不同场景代表的含义不一样,比如说90这个数据,可能代表一个人的体重,也可能代表的是一个人的分数。单纯看数字是没有意义的</font>

定义:

<font size="4">描述事物的符号记录称为数据。描述事物的符号可以是数组,也可以是文字,图形,声音,语言等,数据可以有多种表现形式,它们都可以经过数字化后存到计算机中</font>

2.数据库(DB)

数据库是长期存储在计算机内,有组织的,可以共享的大量数据的集合 数据库数据具有永久存储,有组织,可共享三个基本特点

3.数据库管理系统(DBMS)

3.1概念

  • 用来定义和管理数据的软件,可以保证数据的安全性和完整性,比较流行的数据库管理系统有:MySql、Oracle、SQL server、DB2等
  • 比如说我们写了xxx.doc,这个就是一个word文件,那么我们是不是使用word去打开里面的文件,那么word这个软件就当于这里说的DBMS
  • 数据库管理系统(DBMS)可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。为保存应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体用户的数据。 数据库管理系统、数据库和表的关系如图所示: img img

3.2主要功能

接下来看看数据库管理系统的主要功能

  • ①数据定义功能

<font size="4">DBMS提高数据定义语言DDL,用户可以通过它来对数据库中的数据对象进行定义</font>

  • ②数据组织,存储和管理

<font size="4">DBMS要分类组织,存储和管理各种数据,包括数据字典,用户数据,数据的存取路径等</font>

  • ③数据操作功能

<font size="4">DBMS提高数据操作语言DML,用户可以使用DML操作数据,实现对数据的插入,修改,删除等基本操作</font>

  • ④数据库的事务管理和运行管理

<font size="4">数据库在建立,运用和维护式由数据库管理系统统一管理,统一控制,以保证数据的安全性,完整性,多用户对数据的并发使用一间发送故障后的系统恢复</font>

  • ⑤数据库的建立和维护功能

<font size="4">数据库初始数据的输入、转换功能,数据库的存储、恢复功能,数据库的重组织功能和性能建设、分析等</font>

4.数据库管理员(DBA)

对数据库管理系统进行操作的人员,主要负责数据库的运营和维护

5.数据库应用系统

在数据库管理系统的基础上,使用数据库管理系统的语法,开发的直接面对最终用户的应用程序,比如:学生管理系统、人事管理系统、图书管理系统

我们可以这样来理解:不是每一个人都可以接触到数据库的,而且接触到数据库也不一定会使用,举个例子:以学生管理系统来说,学生只要点击选课,就代表选到了,点击退选,就把课程给退了,底层其实还是操作数据库,不过这样子对那些不懂数据库的人来说是很方便的。

6.数据库系统(DBS)

数据库系统一般是由数据库,数据库管理系统(及其开发工具),数据库应用系统,数据库管理员组成 img

7、数据管理技术的产生和发展

数据管理技术经历了人工管理,文件系统,数据库系统三个阶段

7.1.人工管理阶段

早期计算机处理数据是用纸带,比如纸带有一个小孔就代表1,没有孔代表0,所以无法保存到计算机中,因为它的数据是保存在纸带上面 特点:

  • 数据不保存
  • 应用程序管理数据
  • 数据不共享
  • 数据不具有独立性
    - 数据和应用程序是绑定在一起的

缺点:

  • 数据的逻辑结构或物理结构发生变化后,应用程序必须做相应的修改,加重程序员的负担

7.2.文件系统阶段

用文件系统管理数据有下面的特点

  • 数据可以长期保存(数据保存到文件中)
  • 由文件系统管理数据

缺点

  • 数据共享性差,冗余度大
  • 数据独立性差

7. 3.数据库系统阶段

用数据库系统管理数据具有下面的特点

  • 数据结构化
  • 数据的共享性高,冗余度低,易扩充
  • 数据独立性高
  • 数据由DBMS统一管理和控制 img

数据模型也是一种模型,它是对现实世界数据特征的抽象,数据模型就是现实世界的模拟 像沙盘,航模等就是模型

1.两类数据模型

数据模型要满足三方面要求 ①能比较真实地模拟现实世界 ②容易被人所理解 ③便于在计算机上实现 根据模型应用的不同目的,可以分成两类

1.1 第一类是概念模型

<font size="4">概念模型也称信息模型,它是按照用户的观点来对数据和信息建模,主要用于数据库设计
<font size="4">概念模型是现实世界到机器世界的<font color="red">中间层次</font>,表现为
①概念模型用于信息世界的建模
②现实世界到信息世界的第一层抽象
③数据库设计人员进行数据库设计的有理工具
④数据库设计人员和用户之间进行交流的语言
<font color="red" size="5">概念模型的要求:
①具有较强的语义表达能力
②能够方便、直接地表达应用中的各种语义知识
③简单,清晰,易于用户理解</font>
</font></font>

1.2第二类是逻辑模型和物理模型

  • ①逻辑模型
    - 层次模型 - 网状模型 - 关系模型 - 面向对象模型 - 对象关系模型
它是按照计算机系统的观点对数据建模,主要用于DBMS的实现 - ②物理模型 ><font size="4">物理模型是对数据最底层的抽象,它描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法,是面向计算机系统的</font> ## 2.数据模型的组成要素 数据模型通常由数据结构,数据操作和完整性约束三部分组成 - 数据结构
    - 数据结构描述数据库的组成对象以及对象之间的联系,数据结构是所描述的对象类型的集合,是对系统静态特性的描述 - 数据操作
      - 数据库主要由查询,更新(包括插入,删除,修改)两大类操作,数据操作是对系统动态特性的描述
    • 数据的完整性约束条件
      - 数据不是随便存的,而是有一定的约束的,数据的完整性约束条件是一组完整性规则,比如说身高体重的数据是数字,不能是图片,音频 。比如规定成绩最低是0分,不可能出现-1分的情况等等 - 在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件
        - 实体完整性
          - 比如说,身份证号能唯一标识一个人的身份,学号可以唯一标识学生
          - 参照完整性 
           <ul> 
            - 比如说在学生表中编号001号表示的是学生张三,那么在成绩表中,编号001表示的学生也必须是张三,不能是其他人 
           </ul>  
         </ul>  
        /ul>  
        l> 
        

        1.相关概念

        1.1实体(Entity)

        客观存在并且可以相互区别的事物称为实体。 实体可以是人,事,物,也可以是抽象的概念或联系 例如:一个学生,一个部门,学生的一次选课等都是实体

        1.2.属性(Attribute)

        • 属性是对实体的描述
        • 实体所具有的某一特征称为属性
        • 一个实体可以由若干个属性来刻画
        • 举例:学生实体可以由学号,姓名,性别,年龄,入学设计等属性组成,这些属性组合起来表征一个学生

        1.3.码(Key) 也可以叫关键字

        <font size="5" color="red">可以唯一标识实体的属性集称为码
        也就是说给其中的一个属性值,我们就可以唯一确定一条记录,就比如说给一个身份证号,我们就就可以找到对应的那个人一样
        学号是学生实体的码
        身份证是人这个实体的码</font>

        1.4.域

        <font size="5" color="red">域是一组由相同数据类型的值的集合。属性的取值范围来自某一个域</font>
        <font size="5" color="bigred">比如说:人的性别的域是(男,女)
        学生的成绩的域是[0,100]
        学生的年龄的域为整数</font>

        1.5.实体型(Entity Type)

        <font size="5" color="bigred">具有相同属性的实体一定有共同的特征和性质,用实体名及其属性名集合来抽象和刻画同类实体,称为实体型</font>
        <font size="5" color="fwfvdeveveavdsvae">比如说张三,李四等学生都有学号,姓名,性别等属性,我们就可以把这些学生归纳成为实体型</font>

        1.6.实体集

        <font size="5" color="fwfvdeveveavdsvae">同一类型的实体的集合称为实体集,比如全体学生就是一个实体集</font>

        1.7.联系

        <font size="5" color="fwfvdeveveavdsvae">实体之间是有联系的,比如说老师和学生之间存在着教书和听课的关系
        在现实世界,事物内部,以及事物之间是有联系的,这种联系在信息世界中反映为实体(型)内部的联系是实体(型)之间的联系</font>

        <font size="5" color="bigred">实体内部的联系通常是指组成实体的各属性之间的联系,实体之间的联系通常是指不同实体集之间的联系</font>

        2.两个实体型之间的联系

        2.1一对一联系(1:1)

        img

        2.2一对多联系(1:n)

        img

        2.3多对多联系(m:n)

        img

        3.两个以上实体型之间的联系

        两个以上的实体型之间也存在着一对一,一对多,多对多联系 img

        img img

        4.单个实体型内的联系

        img img

        5.概念模型的一种表示方法:实体-联系图(E-R图)

        E-R图提供了表示实体型,属性和联系的方法 img img img img img img

        1.关系数据模型的数据结构

        • 关系:一个关系对应通常说的一张表
        • 元组:表中的一行就是一个元组
        • 属性:表中的一列就是一个属性,给每个属性起名就是属性名
        • 码(Key):也称为码键,码也是一个属性,表中的某一个属性组,它可以唯一确定一个元组,比如学生表中的学号,可以唯一确定一个学生
        • 域:属性的取值范围
        • 分量:元组中的一个属性值
        • 关系模式:对关系的描述,一般表示为;关系名(属性1,属性2,…,属性n) img

        2.关系数据模型的操纵与完整性约束

        关系型数据模型的操作主要包括查询,插入,删除和更新数据,这些操作必须满足关系的完整性约束 关系的完整性约束包括三大类: ①实体完整性 ②参照完整性 ③用户定义的完整性

        3.关系数据模型的优点

        ①关系模型和格式化模型不同,它是建立在严格的数学概念的基础上的 ②关系模型的概念单一 ③关系模型的存取路径对用户透明,从而具有更高的独立性,更好的安全保密性也简化了程序员的工作和数据库开发建立的工作

        1.数据库系统模式的概念

        模式是数据库中全体数据的逻辑结构和特征的描述,同一个模式可以有很多的实例,通俗的话来说,比如说模式规定了一个人有眼睛,鼻子等,但是不同的人他们的眼睛,鼻子是不一样的,这个就是实例 模式是抽象的,实例是具体的,我们可以近似理解成像Java的类和对象

        <font size="4" color="red">例如:在学生选课数据库模式中,包含学生记录、课程记录和学生选课记录
        2013年的一个学生数据库实例,包含:
        2013年学校中所有学生的记录
        学校开设的所有课程的记录
        所有学生选课的记录
        2012年度学生数据库模式对应的实例与
        2013年度学生数据库模式对应的实例是不同的</font>

        2.数据库系统的三级模式结构

        数据库系统的三级模式是指数据库系统是由外模式,模式和内模式三级构成

        模式:数据在数据库中的存储形式,比如二维表

        <font size="4">模式也叫<font color="red">逻辑模式,</font>是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图
        它是数据库系统模式结构的<font color="red">中间层,</font>既不涉及数据的物理存储细节的硬件环境,也和具体的应用程序,所使用的高级程序设计语言 无关</font>

        外模式:应用程序根据用户的实际需求展示数据

        <font size="4">外模式也叫子模式或<font color="red"> 用户模式</font>,它是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是和某一应用无关的数据的逻辑表示</font>

        内模式:数据在实际物理硬盘如何存储

        • 内模式也叫存储模式
        • 一个数据库只有一个内模式
        • 它是数据物理结构和存储方式的描述
        • 是数据在数据库内部的表示方式 img
        • 外模式通常是模式的子集,一个数据库可以有多个外模式,因为我们一般只是查看数据库中的部分信息
        • 同一个外模式也可以为某一用户的多个应用系统使用,但是一个应用程序只能使用一个外模式。比如说学生成绩表,可以用在查询期末考试成绩这个应用中使用,毕业以后,要查询每一科的成绩也是使用学生成绩这张表
        • 外模式有助于保证数据库的安全性,因为用户只能看见和访问所对应的外模式中的数据,数据库的其他数据是看不见的

        3.数据库的二级映像功能与数据独立性

        数据库管理系统在三级模式之间提供了两层映像 <font size="4" color="red">外模式/模式映像 模式/内模式映像</font>

        本文为互联网自动采集或经作者授权后发布,本文观点不代表立场,若侵权下架请联系我们删帖处理!文章出自:https://zengyihong.blog.csdn.net/article/details/124528060
-- 展开阅读全文 --
安全面试之XSS(跨站脚本攻击)
« 上一篇 07-24

发表评论

成为第一个评论的人

热门文章

标签TAG

最近回复