• 数据库系统基本概念


    数据库系统(Database System, DBS)包含了数据库(Database, DB)、数据库管理系统(Database Management System,DBMS)、硬件、其他软件及用户。

     

    数据模型(Data Model):

    首先明确下模型(Model)是个什么东东?

    模型可以分为实物模型与抽象模型。例如,汽车模型、飞机模型都是实物模型;数学模型S = PI * R^2是一种抽象模型,它抽象地描述了圆的面积和半径之间的数量关系。

    数据模型是一种抽象模型,而且它是数据特征的抽象,而数据是现实世界中事物及其特征的抽象。

     

    数据模型的3种类型:

    1. 概念数据模型(Conceptual Data Model),也称为信息模型。

    面向用户的模型,与具体DBMS无关。作为数据库设计人员与用户之间进行交流的语言,服务于数据库设计的应用目的。可以经过转换变为DBMS支持的结构(又称逻辑)数据模型,进而在DBMS中得以实现。最常用和最著名的概念数据模型是实体-联系(E-R)模型,简称E-R模型。

    2. 结构数据模型(Structure Data Model)又称为逻辑数据模型(Logic Data Model)。

    既面向用户又面向系统的数据模型,服务于DBMS的应用实现。是用户从数据库中所看到的数据模型,为具体的DBMS所支持。与具体的DBMS相关联。一般而言,一种DBMS只支持一种数据模型。较为成熟并为人们广泛使用的结构数据模型有层次模型、网状模型、关系模型、面向对象模型和面向对象关系模型等。

    3. 物理数据模型(Physical Data Model)。

    用于描述数据在物理存储介质上的组织结构,与具体的DBMS有关,也与具体的操作系统和硬件有关。每种结构数据模型在实现时都要有其对应的物理数据模型。

     

    概念数据模型:

    E-R模型三要素:实体、属性、联系。

    实体:现实世界中能够相互区分的事物。

    属性:实体某个特定方面的特征。

    联系:实体之间的联系。

     

    实体型:用实体名称和属性名称集合来抽象和刻画同类实体,称为实体型(Entity Type)。

    例如,学生(学号、姓名、性别、出生年月、入学时间)就是一个实体型。

     

    实体集:若干个实体型的集合称为一个实体集(Entity Set)。

    例如,全体学生就是一个实体集。

     

    联系的分类:

    1. 从联系的不同层面上来看:

    实体集内部的联系:即实体集内部各个实体之间的联系。

    实体集之间的联系:即一个实体集中的实体与另一个实体集中实体的联系。

    2. 从联系的表现形式上来看:

    存在性联系:如学校存在老师。

    功能性联系:如教师授课。

    事件性联系:如学生借书。

    3. 从实体之间联系的“元数”来看:

    一对一联系(1:1):如果对于实体集A中的每一个实体a,实体集B中至多有一个实体b与之联系;反之亦然。记为1:1.

    一对多联系(1:n):对于实体集A中的每一个实体a,在实体集B中有n个实体与之联系,而且,对于实体集B中的每一个实体b,实体集A中至多有一个实体与之联系,则称实体集A和实体集B具有1对多的联系,记为1:n。

    多对多联系(m:n):如果对于一个实体集A中的每一个实体,实体集B中有n个实体与之联系;同时对于实体集B中的每一个实体,实体集A中有m个实体与之联系,则称实体集A和实体集B具有多对多联系,记为m:n。

     

    一元联系:一个实体内部的联系。

    二元联系:两个实体间的联系。

    多元联系:3个或3个以上实体间的联系。

     

    E-R图:E-R模型的图示形式。

    矩形表示实体

    椭圆表示属性

    菱形表示联系

     

    结构数据模型:

    一般来说,结构数据模型是严格定义的一组概念的集合,主要由数据结构、数据操作和完整性约束3部分组成,通常称为数据模型3要素。

     

    关系模型:

    关系模型是用二维表格表示实体集的结构数据模型。表格由行和列组成。

  • 相关阅读:
    排列组合例题分析
    短信微服务+springboot+redis整合,动态获取短信验证码
    mac版idea 2018.3.5版 永久激活教程
    windows版idea 2018.3.5版 永久激活教程
    深入理解 Java 垃圾回收机制
    如何写代码 —— 编程内功心法
    并发与并行的区别
    Lua语法要点
    android 手机上运行图像算法
    OPENCL 错误码
  • 原文地址:https://www.cnblogs.com/nufangrensheng/p/3725822.html
Copyright © 2020-2023  润新知