• 数据库基础知识



    title: 数据库基础知识
    toc: true
    date: 2018-09-29 08:36:52
    categories:

    • Web

    tags:

    • 数据库

    数据库系统

    数据库系统的组成

    数据库系统是由数据库、数据库管理系统、支持数据库运行的软硬件环境、数据库应用软件和数据库管理员组成的。

    • 数据库:长期储存在计算机内、有组织的、可共享的大量数据的集合。
    • 数据库管理系统:DBMS,管理数据库的软件,是用户和数据库之间的接口,负责完成各项数据处理操作:数据定义、数据操纵、数据库运行管理、数据库的建立和维护。
    • 支持数据库运行的软硬件环境:有足够大的内存来保障数据库系统的运行,操作系统要提供对数据管理系统的支持等。
    • 数据库应用软件:由用户或第三方软件公司设计的有特殊用途的应用软件,实现用户和数据库管理系统之间的沟通和交流。例如图书管理系统等。
    • 数据库管理员:Database Administrator,DBA,负责建立、管理和维护数据的人员。主要职责包括:定义并存储数据库的内容、监督并控制数据库的使用、负责数据库的日常维护、必要时重组和改进数据库。

    数据库的体系结构

    数据库三级模式结构

    模式是对数据库中全部数据的逻辑结构和特征的描述,仅仅涉及到“型”的描述,不涉及具体的值。

    数据库由内模式、模式、外模式三级组成。

    img

    • 内模式:又称为存储模式,是对数据库物理结构和存储方式的描述,是数据在数据库内部的表示方式。一个数据库只有一个内模式。
    • 模式:又称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
    • 外模式:通常是模式的一个子集,又称为子模式。外模式面向的是用户,是用户眼中的数据库,所以外模式又称为用户视图。

    三级模式之间的映射

    • 外模式/模式间的映射:模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。对于同一个模式,可以有任意个外模式。对于每个外模式,数据库系统都有一个外模式/模式之间的映射。
    • 模式/内模式间的映射:数据库只有唯一的模式和内模式,因此它们之间的映射也是唯一的,这个映射定义了数据库全局逻辑结构和存储结构之间的对应关系。

    数据模型

    概念

    数据模型是一种模型,是现实世界数据特征的抽象。

    数据模型通常包括数据结构、数据操作和完整性约束三部分。

    • 数据结构:是所研究对象的集合,描述的是数据库结构的组成、特性和其互相之间的联系。数据库系统通常按数据结构的类型来命名数据模型,如关系结构的模型命名为关系模型。
    • 数据操作:数据库中各种对象的实例允许执行的操作的集合。主要包括检索和维护两大类。
    • 完整性约束:为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改、删除等操作时,DBMS自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容。

    实体与关系

    • 实体:客观存在并可相互区分的事物,一个实体可以用若干属性来描述。具有相同属性的实体集合称为实体集。
    • 关系:有一对一、一对多、多对多三种。

    常见的数据模型

    • 层次模型:数据结构是一颗有向树,特征是:
      • 有且仅有一个结点没有父结点,即根结点
      • 除了根结点,其他结点有且只有一个父结点
    • 网状模型:结点间可以任意发生关系,特征是:
      • 可以有一个以上的结点没有父结点
      • 允许结点有多于一个的父结点
    • 关系模型:用二维表结构表示实体与实体之间的联系。E-R方法(实体-关系方法)是表示实体与关系的最常用的方法。在E-R图中:
      • 长方形表示实体
      • 椭圆表示属性
      • 菱形表示关系
      • 关系与实体间用实线连接,并注明关系的类型

    层次模型

    网状模型

    关系模型

    关系数据库的规范化

    为了使数据库设计更加优化,提出了规范化理论。

    关系数据库必须满足一定的要求,即满足不同的范式。

    在第一范式(1NF)的基础上进一步满足更多要求的称为第二范式(2NF),以此类推。一般来说,数据库只要满足第三范式(3NF)即可。

    • 第一范式(1NF):无重复的列,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成。
    • 第二范式(2NF):先满足1NF,同时要求属性完全依赖于主键
    • 第三范式(3NF):先满足2NF,同时要求不存在传递依赖关系
  • 相关阅读:
    导航栏4种效果---原生js
    穿墙效果
    原生瀑布流
    拖拽碰撞--原声js(自身理解上新的方法)
    CM10 WIFI连不上解决方案
    项目报错 java lang illegalargumentexception error at 0 can t find referenced pointcut
    Apache Log4j 2 is Coming
    Struts2报错:No result defined for action xxx and result input
    运行Android程序出错:The connection to adb is down, and a severe error has occured
    DB2 和 有道词典冲突: A communication error has been detected. Communication protocol being used: Reply.fill().
  • 原文地址:https://www.cnblogs.com/zmj97/p/10180752.html
Copyright © 2020-2023  润新知