1.2 数据模型

数据模型是对现实世界数据特征的抽象,是现实世界的模拟

数据模型是用来描述数据、组织数据和对数据进行操作的

数据模型应满足三方面要求:

1        能比较真实地模拟现实世界

2        容易为人所理解

3        便于在计算机上实现

数据模型是数据库系统的核心和基础

1.2.1        数据建模

数据建模:把现实世界中的具体事物抽象、组织为某一数据库管理系统 支持的数据模型

数据建模过程---两步抽象

现实世界中的客观对象抽象为概念模型

将现实世界抽象为信息世界 

把概念模型转换为某一数据库管理系统支持的数据模型 

将信息世界转换为机器世界

1.2.2        概念模型

概念模型的用途:

1        是现实世界到机器世界的一个中间层次

2        用于信息世界建模

3        现实世界到信息世界的第一层抽象

4        数据库设计的有力工具

5        数据库设计人员用户之间进行交流的语言

对概念模型的基本要求:

1        较强的语义表达能力

1        简单、清晰、易于用户理解

1.         信息世界中的基本概念

(1)实体entity):客观存在并可相互区别的事物称为实体 ,可以是具体的人、事、物、抽象的概念或联系。

(2)属性attribute):实体所具有的某一特性称为属性, 一个实体可以由若干个属性来刻画。

(3)key):唯一标识实体的属性集称为码。

(4)实体型entity type):用实体名及其属性名集合来抽象和刻画同类实体称为实体型。

(5)实体集entity set):同一类型实体的集合称为实体集。

(6)联系relationship): 现实世界中事物内部以及事物之间的联系在信息世界 中反映为实体(型)内部的联系和实体(型)之间的联系。 实体内部的联系通常是指组成实体的各属性之间的联系 。实体之间的联系通常是指不同实体集之间的联系 。实体之间的联系有一对一、一对多和多对多等多种类型。

2.        实体-联系模型

实体-联系方法Entity-Relationship Approach) :用E-R图来描述现实世界的概念模型 ,E-R方法或E-R模型。

1.2.3        数据模型三要素

1.        数据结构 

2.        数据操纵 

3.        完整性约束

1.         数据结构

数据结构:描述数据库的组成对象以及对象之间的联系。

描述的内容 :与对象的类型、内容、性质有关 ,与数据之间联系有关。

数据结构是对系统静态特性的描述。

2.         数据操纵

数据操纵:对数据库中各种对象(型)的实例(值)允许执行的 操作的集合,包括操作及有关的操作规则。

数据库主要操作:查询 ,更新(包括插入、删除、修改)。

数据模型必须定义:

1        操作的确切含义

2        操作符号

3        操作规则(如优先级)

4实现操作的语言

数据操纵是对系统动态特性的描述

3.         完整性约束

完整性约束:一组完整性规则 。

完整性规则:给定的数据模型中数据及其联系所具有的制约和依存规则 ,限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、 有效和相容。

数据模型对完整性约束条件的定义 :反映和规定必须遵守的基本的通用的完整性约束 ,例如,在关系模型中,任何关系必须满足实体完整性和参照完整性,数据模型都是逻辑上的。

物理模型:数据模型以一定的组织方式存储在数据库管理系统中, 是数据模型在数据库管理系统内部的物理存储结构 ,描述数据在数据库管理系统内部的数据组织和存取方法的实现,包括存储结构和索引结构的物理实现。

1.2.4        层次模型

层次模型实体用记录表示 ,实体的属性对应记录的数据项(或字段) ,实体之间的联系转换成记录之间的两两联系 ,数据结构的单位是基本层次联系 ,是指两个记录以及它们之间的一对多(包括一对一)的联系。

层次模型是数据库系统中最早出现的数据模型。

层次数据库系统的典型代表是IBM公司的IMS(Information Management System。 

层次模型用树形结构来表示各类实体以及实体间的联系。

1.         层次模型的数据结构

 满足下面两个条件的基本层次联系的集合为层次模型:

1. 有且只有一个结点没有双亲结点,这个结点称为根结点。

2. 根以外的其它结点有且只有一个双亲结点 。

层次模型中的几个术语 :根结点,双亲结点,兄弟结点,叶结点。

层次模型的特点: n

1        结点的双亲唯一的 。

2        只能直接处理一对多的实体联系 。

3        每个结点表示一个记录类型,记录类型之间的联系用结点之间的连线(有向边)表示 。

4        各个记录类型、同一记录类型中各个字段不能同名 。

5        每个记录类型可以定义一个排序字段,也称为码字段 。

6        任何记录值只有按其路径查看,没有一个子女记录值能够脱离双亲记录值而独立存在。

2. 层次模型的数据操纵与完整性约束

层次模型的数据操纵: 查询,插入,删除,更新。

层次模型的完整性约束:

1        无相应的双亲结点值就不能插入子女结点值。

2        如果删除双亲结点值,则相应的子女结点值也被同时删除。 

3        更新操作时,应更新所有相应记录,以保证数据的一致性。

3.        层次模型的优缺点

层次模型优点 

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

查询效率高 ,层次模型中记录之间的联系用有向边表示,就是记录之间的存取路径。

层次数据模型提供了良好的完整性约束支持。

层次模型缺点 

很多联系是非层次性,不适合用层次模型表示。

一个结点具有多个双亲结点,只能通过冗余数据(易产生不 一致性)或创建非自然的数据结构(虚拟结点)来解决。

对插入和删除操作的限制多,应用程序的编写比较复杂

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

层次命令趋于程序化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/340000.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python算法与数据结构(搜索算法和拓扑排序算法)---深度优先搜索

课程目标 了解树/图的深度遍历,宽度遍历基本原理;会使用python语言编写深度遍历,广度遍历代码;掌握拓扑排序算法 搜索算法的意义和作用 搜索引擎 提到搜索两个子,大家都应该会想到搜索引擎,搜索引擎的基…

决策树的分类

概念 决策树是一种树形结构 树中每个内部节点表示一个特征上的判断,每个分支代表一个判断结果的输出,每个叶子节点代表一种分类结果 决策树的建立过程 1.特征选择:选取有较强分类能力的特征。 2.决策树生成:根据选择的特征生…

C#实现基于Word保护性模板文件的修改

目录 制作一个保护性模板文件 给文件设置保护密码 设计模板内容 限制编辑 进一步的需求 范例运行环境 Office DCOM 配置 设计实现 进一步修改模板文件 设置和取消保护 遍历WORD内容控件 总结 制作一个保护性模板文件 在类似一些OA的自动化处理或审批类系统里&a…

Python文件操作和异常处理:高效处理数据的利器

文章目录 一、引言1.1 文件操作和异常处理对于编程的重要性1.2 Python作为实现文件操作和异常处理的强大工具 二、为什么学习文件操作和异常处理2.1 处理各种文件格式:从文本到图像到音频等2.2 确保代码的鲁棒性:有效处理异常情况 三、文件读取和写入3.1…

如何让亚马逊,速卖通,美客多店铺排名和流量稳定爬升

一、关键词优化 关键词是亚马逊店铺排名的关键。通过合理的关键词优化,可以提高店铺的曝光率。卖家需要研究消费者的搜索习惯和行为,了解他们使用哪些关键词进行搜索,然后将这些关键词用于商品描述、标题和元数据中。此外,还可以…

GEE:最小距离分类器(minimumDistance)分类教程(样本制作、特征添加、训练、精度、最优参数、统计面积)

作者:CSDN @ _养乐多_ 本文将介绍在Google Earth Engine (GEE)平台上进行最小距离分类(minimumDistance)的方法和代码,其中包括制作样本点教程(本地、在线和本地在线混合制作样本点,合并样本点等),加入特征变量(各种指数、纹理特征、时间序列特征、物候特征等),运行…

PCIe-6328 八口USB3.0图像采集卡:专为工业自动化和机器视觉设计

PCIe-6328一块8口USB 3.0主控卡,专为工业自动化和机器视觉相关应用设计。USB 3.0或称作高速USB,是一项新兴总线技术,10倍于USB2.0的传输速度,尤其适用于高速数据存储和图 像设备。 绝大多数现有USB 3.0卡兼用多个接口于一个USB 3…

中仕教育:国考调剂和补录的区别是什么?

国考笔试成绩和进面名单公布之后,考生们就需要关注调剂和补录了,针对二者之间的区别很多考生不太了解,本文为大家解答一下关于国考调剂和补录的区别。 1.补录 补录是在公式环节之后进行的,主要原因是经过面试、体检和考察&#…

喝酒高境界:微醺和断片之间找到平衡

云仓酒庄的品牌雷盛红酒LEESON分享喝酒追求放松,喝的刚刚好就是微醺状态,喝大了就会断片。所以有人说,喝酒最高的境界是在微醺与断片之间找到一种平衡。 微醺是指稍有酒意但完全清醒且没有任何不良反应,可以散步走回家&#xff0c…

5118会员优惠码,拿走不谢,2024年最新的优惠码

5118大数据平台会员优惠码【yhm666】,结算时勾选“使用优惠码”,然后在优惠码窗口中输入yhm666,然后点确定即可享受特价会员价格。阿腾云atengyun.com分享如下图: 5118会员优惠码【yhm666】 5118会员价格和使用优惠码之后的价格对…

ctfshow-反序列化(web267-web270)

目录 web267 web268 web269 web270 总结 web267 页面用的什么框架不知道 看源码看一下 框架就是一种软件工具,它提供了一些基础功能和规范,可以帮助开发者更快地构建应用程序。比如Yii框架和ThinkPHP框架就是两个流行的PHP框架,它们提供…

租赁一台同传设备,哪里比较专业呢

我们知道 ,同声传译设备在会议、演讲或其他语言交流场合中发挥着至关重要的作用。它们能够实现不同语言之间的即时翻译,让与会者或听众更准确地理解会议或演讲的内容。对于跨国会议或活动,同声传译设备是确保语言沟通顺畅的必要工具。那么&am…

如何搭建MariaDB并实现无公网ip环境远程连接本地数据库

🌈个人主页: Aileen_0v0 🔥热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​💫个人格言:“没有罗马,那就自己创造罗马~” 文章目录 1. 配置MariaDB数据库1.1 安装MariaDB数据库1.2 测试局域网内远程连接 2. 内网穿透2.1 创建隧道映射…

2017年认证杯SPSSPRO杯数学建模B题(第二阶段)岁月的印记全过程文档及程序

2017年认证杯SPSSPRO杯数学建模 B题 岁月的印记 原题再现: 对同一个人来说,如果没有过改变面容的疾病、面部外伤或外科手术等经历,年轻和年老时的面容总有很大的相似性。人们在生活中也往往能够分辨出来两张不同年龄段的照片是不是同一个人…

sqli-labs通关笔记(less-11 ~ less16)

上一篇文章说了sqli-labs的less-1到less-10的注入方法,这一篇从less-11开始。 由于从11关开始都是post请求,不会像前十关一样存在符号转成url编码的麻烦,所以不再使用apifox,直接从页面上进行测试。 Less-11 老规矩,…

MySQL 8.3 发布,具体有哪些新增和删减?

MySQL 8.3 主要更新:用于标记事务分组的 GTID、JSON EXPLAIN 格式增强、一些功能删除等。 MySQL 是一款广泛使用的开源的关系型数据库管理系统,已推出其最新版本 MySQL 8.3。它带来了新功能和一些删除,有望简化数据库操作。让我们来看看有哪些…

机器学习:BootStrapping(Python)

import numpy as np import pandas as pd from sklearn.neighbors import KNeighborsClassifier from sklearn.decomposition import PCA # 主成分分析 from sklearn.preprocessing import LabelEncoder, StandardScaler # 类别标签编码,标准化处理 import matplo…

MySQL ORDER BY(排序) 语句

昨天介绍了 MySQL 数据库 UNION 操作符的使用,今天主要讲解下 ORDER BY(排序)语句。 我们知道从 MySQL 表中使用 SELECT 语句来读取数据。如果需要对读取的数据进行排序,我们就可以使用 MySQL 的 ORDER BY 子句来设定你想按哪个字…

React Native性能优化指南

摘要 本文将介绍在React Native开发中常见的性能优化问题和解决方案,包括ScrollView内无法滑动、热更新导致的文件引用问题、高度获取、强制横屏UI适配、低版本RN适配iOS14、缓存清理、navigation参数取值等。通过代码案例演示和详细说明,帮助开发者更好…

如何本地安装Python Flask并结合内网穿透实现远程开发

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…