当前位置: 首页 > news >正文

软考37-上午题-【数据库】-数据模型、数据库的三级模式和二级映像

一、考情简介

上午题:6分——6道选择题

下午题:15分——一道分析题

E-R图、关系模式:下午考试必考!!!(编制也要考!)

二、数据模型

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

数据模型的分类:

1、概念数据模型——E-R模型

从信息世界中抽象的数据模型。

下午题常考,上午题不怎么考

2、基本数据模型——关系模型

从计算机世界中抽象出的DBMS支持的数据模型

2-1、概念数据模型(信息模型)

 按用户的观点对数据和信息建模,更接近与人的思维,与计算机无关,主要用于数据库的设计。

这类模型中最著名的是:实体-联系模型,即,E-R模型。

2-1-1、E-R模型中的基本术语                                                                        

1、实体

客观存在并相互区别的事物,如:单位、职工、部门、项目。

2、属性

实体的特性,一个实体可以有若干属性。属性的具体取值:属性值

如:学生实体的若干属性(学号、姓名、性别、出生日期、班号)

3、码:

唯一标识实体的属性集。如:学号是学生实体的码。

4、域

属性的取值范围。如:性别域(男,女)

5、联系

实体之间的对应关系。

两个实体集之间的联系有3种类型:

(1)、1对1的联系(1:1)。如:班和班长之间的联系。

(2)、一对多的联系(1:n)。如:班和学生之间的联系。

(3)、多对多的联系(m:n)。如:课程和学生之间的联系。

如果,一个联系也具有属性,该属性也要用无向边与该联系连接起来。 

E-R图示例:

2-2、结构数据模型(数据模型)

结构数据模型,直接面向数据库的逻辑结构,任何一个DBMS都以某个结构数据模型为基础。

常见的结构数据模型:

  • 层次模型
  • 网状模型
  • 关系模型
  • 面向对象模型

2-2-1、层次模型

树形结构,有向树!!!

示例:

2-2-2、网状模型

图结构

示例:

2-2-3、关系模型

二维表格结构来表示实体和实体之间联系数据模型。关系模型是关系的描述。

示例:

2-2-4、真题

三、数据库的三级模式结构

数据库的产品很多,他们支持不同的数据模型(层次模型、网状模型、关系模型、面向对象模型),实用不同的数据库语言,建立在不同的操作系统之上。数据的存储结构也各不相同,但体系结构基本上都有相同的特征,采用:三级模式和两级映像。

3-1、三级模式 

1、概念模式

也称为:模式

对应的是:基本表(DBMS中的基本表)

是数据的逻辑结构 

 

2、外模式

也称为:用户模式、子模式

对应的是:视图

3、内模式

也称为:存储模式

对应的是:存储文件

是数据的物理结构

数据按外模式的描述,提供给用户;按内模式的描述存储在磁盘上。

概念模式提供了连接这两级模式的相对稳定的中间层,并使得两级中任意一级的改变都不受另一级影响。

真题

真题1:

真题2:

3-2、二级映像

数据库系统,在三级模式之间提供了两级映像:模式/内模式映像、外模式/模式映像。两级映像保证了数据库中的数据具有较高的逻辑独立性、物理独立性。

1、模式/内模式映像(概念模式/内模式映像)

存在于概念级和内部级之间,实现了概念模式和内模式之间的相互转换。

2、外模式/模式映像(外模式/概念模式映像)

存在于外部级和概念级之间,实现了外模式和概念模式之间的相互转换。

3、数据的独立性

数据的独立性:数据和程序独立。

数据的独立性由DBMS的二级映像功能来保证。

数据的独立性包括:

  • 数据的物理独立性
  • 数据的逻辑独立性

3-1、数据的物理独立性

当数据库的内模式(存储文件)变化时,数据的逻辑结构不变。

应用程序处理的只是数据的逻辑结构。

所以,数据的物理独立性保证:当数据的物理结构改变时,应用程序不用改变。

但是,为了保证应用程序能够正确执行,需要修改:概念模式和内模式之间的映像

用户的应用程序与数据库的物理结构是相互独立的。

3-2、数据的逻辑独立性

用户的应用程序与数据库的逻辑结构是相互独立的。

数据的逻辑结构变化后,用户程序也可以不用修改。

但是,为了保证应用程序能够正确执行,需要修改:外模式和概念模式之间的映像

真题

真题1:

真题2:

http://www.lryc.cn/news/305029.html

相关文章:

  • 06 分频器设计
  • 力扣hot100题解(python版7-9题)
  • ECMAScript 6+ 新特性 ( 四 ) 迭代器 与 生成器
  • 【MySQL】事务的一致性究竟怎么理解?
  • 证件照(兼容H5,APP,小程序)
  • pytorch-textregression,中文文本回归实践,支持多值输出
  • go语言学而思【持续更新】
  • LVS-NAT之VMNET环境搭建
  • [TCP] TCP/IP 基础知识词典(2)
  • 【牛牛送书 | 第四期】《高效使用Redis:一书学透数据存储与高可用集群》带你快速学习使用Redis
  • Threejs 实现3D影像地图,Json地图,地图下钻
  • 根据Excel创建管道系统及材质
  • 第八篇【传奇开心果系列】python的文本和语音相互转换库技术点案例示例:Google Text-to-Speech虚拟现实(VR)沉浸式体验经典案例
  • ubuntu使用LLVM官方发布的tar.xz来安装Clang编译器
  • Windows 远程控制 Mac 电脑怎么操作
  • c# HttpCookie操作,建立cookie工具类
  • 【这个词(Sequence-to-Sequence)在深度学习中怎么解释,有什么作用?】
  • 挑战30天学完Python:Day16 日期时间
  • Web3之光:揭秘数字创新的未来
  • Stable Diffusio——采样方法使用与原理详解
  • 小米14 ULTRA:重新定义手机摄影的新篇章
  • 【leetcode热题】路径总和 II
  • ChatGPT在数据处理中的应用
  • 微服务-Alibaba微服务nacos实战
  • Linux Driver | 设备树开发之初识设备树
  • 2月24日(周六)比赛前瞻:曼联 VS 富勒姆、拜仁 VS 莱比锡
  • React18源码: task任务调度和时间分片
  • 【工具类】阿里域名关联ip(python版)
  • STM32自学☞输入捕获测频率和占空比案例
  • [yolov9]使用python部署yolov9的onnx模型