0

0

介绍数据库的三种模型

coldplay.xixi

coldplay.xixi

发布时间:2021-01-18 09:14:46

|

5972人浏览过

|

来源于CSDN

转载

介绍数据库的三种模型

相关免费学习推荐:mysql视频教程

前言

数据模型是数据库系统的核心,本文简要介绍三种主要的数据库模型。


一、格式化模型

格式化模型是层次模型和网状模型的统称

1.层次模型

① 层次数据模型的概念

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

② 层次模型的数据结构

特点:

  1. 结点的双亲是唯一的;
  2. 只能直接处理一对多的实体联系;
  3. 每个记录类型可以定义一个排序段,也称码字段;
  4. 任何记录值只有按其路径查看时才能显出它的全部意义;
  5. 没有一个子女记录值能够脱离双亲记录值而独立存在。

③层次模型的数据操纵

  • 查询
  • 插入
  • 删除
  • 更新

④层次模型的完整性约束

  1. 无对应的双亲结点值就不能插入子女结点;
  2. 如果删除双亲结点则相应的子女节点值也被同时删除;
  3. 更新操作时,应更新所有相应记录,以保证数据的一致性。

⑤层次模型的优缺点

  • 优点
    层次模型的数据结构比较简单清晰;
    查询效率高,性能优于关系模型,不低于网状模型;
    层次数据模型提供了良好的完整性支持。

  • 缺点
    结点之间的多对多联系表示不自然;
    对插入和删除操作的限制多,应用程序的编写比较复杂;
    查询子女结点必须通过双亲结点;
    层次命令趋于程序化;

2.网状模型

①网状模型的概念

网状数据库系统采用网状模型作为数据的组织方式
✧典型代表是DBTG系统:
■亦称CODASYL系统
■20世纪70年代由DBTG提出的一个系统方案
必实际系统
■Cullinet Software公司的IDMS
■Univac公司的DMS1100
■Honeywell公司的IDS/2
■HP公司的IMAGE

②网状模型的数据结构

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

  1. 允许一个以上的结点无双亲;
  2. 一个结点可以有多于一个的双亲。

表示方法(与层次数据模型相同)

  • 实体型:用记录类型描述
    每个结点表示-一个记录类型(实体)
  • 属性:用字段描述
    每个记录类型可包含若千个字段
  • 联系:用结点之间的连线表示记录类型(实体)之间的一对多的父子联系

③网状模型的操纵与完整性约束

Sora
Sora

Sora是OpenAI发布的一种文生视频AI大模型,可以根据文本指令创建现实和富有想象力的场景。

下载

网状数据库系统(如DBTG)对数据操纵加
了一些限制,提供了–定的完整性约束
■码:唯一标识记录的数据项的集合
■一个联系中双亲记录与子女记录之间是一-对多联系
■支持双亲记录和子女记录之间某些约束条件

④网状模型的优缺点

  • 优点
    a.能够更为直接地描述现实世界,如一个结点可以有多个双亲
    b.具有良好地性,存取效率较高
  • 缺点
    a.结构比较复杂,而且随着应用环境地扩大,数据库就变得越来越复杂,不利于最终用户掌握
    b.DDL、DML语言复杂,用户不容易使用
    c.记录之间联系是通过存取路径实现地,用户必须了解系统结构地细节

3.网状模型与层次模型的区别

■网状模型允许多个结点没有双亲结点
■网状模型允许结点有多个双亲结点
■网状模型允许两个结点之间有多种联系(复合联系)
■网状模型可以更直接地描述现实世界
■层次模型实际上是网状模型的一一个特例

二、关系模型

①关系模型的概念

关系数据库系统采用关系模型作为数据的组织方式
心970年美国IBM公司SanJose研究室的研究员E.F.Codd首次提出了数据库系统的关系模型
计算机厂商新推出的数据库管理系统几乎都支持关系模型

②关系模型的数据结构

在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。

  • 关系(Relation)
    ●一个关系对应通常说的一张表

  • 元组(Tuple)
    ●表中的一行即为一个元组

  • 属性(Attribute )
    ●表中的一列即为一个属性,给每–个属性起一个名称即属性名

  • 主码(Key)
    ●也称码键。表中的某个属性组,它可以唯一 确定一个元组

  • 域(Domain )
    ●是一组具有相同数据类型的值的集合。属性的取值范围来自某个域。

  • 分量
    ●元组中的一一个属性值。

  • 关系模式 ●对关系的描述 关系名(属性1,属性2,,.属性n) 学生(学号,姓名,年龄,性别,系名,年级)

关系必须是规范的,满足一定的约束条件
最基本的约束条件: 关系的每一个分量必须是一个不可分的数据项,不允许表中还有表

一个工资表(表中有表)实例

③关系模型的操纵与完整性约束

  • 数据操作是集合操作,操作对象和操作结果都是关系
    ■查询
    ■插入
    ■删除
    ■更新
  • 存取路径对用户隐蔽,用户只要指出“千什么 ’,不必详细说明‘ “怎么干”
  • 关系的完整性约束条件
    ■实体完整性
    ■参照完整性
    ■用户定义的完整性

④关系数据库的优缺点

  • 优点
    1.建立在严格的数学概念的基础上
    2.概念单一
    ●实体和各类联系都用关系来表示
    ●对数据的检索结果也是关系
    3.关系模型的存取路径对用户透明
    ●具有更高的数据独立性,更好的安全保密性
    ●简化了程序员的工作和数据库开发建立的工作
  • 缺点
    1.存取路径对用户透明,查询效率往往不如格式化数据模型
    2.为提高性能,必须对用户的查询请求进行优化,增加了开发数据库管理系统的难度

总结

数据库领域当前的研究工作都是以关系方法为基础,所以大家学习数据库的时候应该把重点放在关系数据库上。

更多相关免费学习推荐:mysql教程(视频)

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

76

2026.03.11

Go高并发任务调度与Goroutine池化实践
Go高并发任务调度与Goroutine池化实践

本专题围绕 Go 语言在高并发任务处理场景中的实践展开,系统讲解 Goroutine 调度模型、Channel 通信机制以及并发控制策略。内容包括任务队列设计、Goroutine 池化管理、资源限制控制以及并发任务的性能优化方法。通过实际案例演示,帮助开发者构建稳定高效的 Go 并发任务处理系统,提高系统在高负载环境下的处理能力与稳定性。

38

2026.03.10

Kotlin Android模块化架构与组件化开发实践
Kotlin Android模块化架构与组件化开发实践

本专题围绕 Kotlin 在 Android 应用开发中的架构实践展开,重点讲解模块化设计与组件化开发的实现思路。内容包括项目模块拆分策略、公共组件封装、依赖管理优化、路由通信机制以及大型项目的工程化管理方法。通过真实项目案例分析,帮助开发者构建结构清晰、易扩展且维护成本低的 Android 应用架构体系,提升团队协作效率与项目迭代速度。

83

2026.03.09

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

97

2026.03.06

Rust内存安全机制与所有权模型深度实践
Rust内存安全机制与所有权模型深度实践

本专题围绕 Rust 语言核心特性展开,深入讲解所有权机制、借用规则、生命周期管理以及智能指针等关键概念。通过系统级开发案例,分析内存安全保障原理与零成本抽象优势,并结合并发场景讲解 Send 与 Sync 特性实现机制。帮助开发者真正理解 Rust 的设计哲学,掌握在高性能与安全性并重场景中的工程实践能力。

223

2026.03.05

PHP高性能API设计与Laravel服务架构实践
PHP高性能API设计与Laravel服务架构实践

本专题围绕 PHP 在现代 Web 后端开发中的高性能实践展开,重点讲解基于 Laravel 框架构建可扩展 API 服务的核心方法。内容涵盖路由与中间件机制、服务容器与依赖注入、接口版本管理、缓存策略设计以及队列异步处理方案。同时结合高并发场景,深入分析性能瓶颈定位与优化思路,帮助开发者构建稳定、高效、易维护的 PHP 后端服务体系。

458

2026.03.04

AI安装教程大全
AI安装教程大全

2026最全AI工具安装教程专题:包含各版本AI绘图、AI视频、智能办公软件的本地化部署手册。全篇零基础友好,附带最新模型下载地址、一键安装脚本及常见报错修复方案。每日更新,收藏这一篇就够了,让AI安装不再报错!

169

2026.03.04

Swift iOS架构设计与MVVM模式实战
Swift iOS架构设计与MVVM模式实战

本专题聚焦 Swift 在 iOS 应用架构设计中的实践,系统讲解 MVVM 模式的核心思想、数据绑定机制、模块拆分策略以及组件化开发方法。内容涵盖网络层封装、状态管理、依赖注入与性能优化技巧。通过完整项目案例,帮助开发者构建结构清晰、可维护性强的 iOS 应用架构体系。

246

2026.03.03

C++高性能网络编程与Reactor模型实践
C++高性能网络编程与Reactor模型实践

本专题围绕 C++ 在高性能网络服务开发中的应用展开,深入讲解 Socket 编程、多路复用机制、Reactor 模型设计原理以及线程池协作策略。内容涵盖 epoll 实现机制、内存管理优化、连接管理策略与高并发场景下的性能调优方法。通过构建高并发网络服务器实战案例,帮助开发者掌握 C++ 在底层系统与网络通信领域的核心技术。

34

2026.03.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.5万人学习

Django 教程
Django 教程

共28课时 | 4.9万人学习

Excel 教程
Excel 教程

共162课时 | 21万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号