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

数据库的三级模式和二级映像

数据库的模式(Schema)是对现实世界的抽象,是对数据库中全体数据的逻辑结构和特征的描述。模式反映的是数据与结构及其联系,数据库系统在其内具有三级模式和二级映像。三级模式分为外模式、模式、内模式,二级映像则是外模式/模式映像和模式/内模式映像

三级模式

ANSI将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。用户级对应外模式,概念级对应模式,物理级对应内模式。

  1. 模式

模式对应概念级,它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图。它是有数据库管理系统提供的数据模式描述语言(DDL)来描述、定义的,体现并反映了数据库系统的整体观。

  1. 外模式

外模式对应于用户级,它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据逻辑的表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据操纵语言(DML)对这些数据记录进行操作。

DML语言可以对数据进行4中操作,即创建(CREATE)、读取(READ)、更新(UPDATE)、删除(DELETE),也把它说成是对数据执行CRUD操作。DDL语言是用于描述数据库中要存储的现实世界实体的语言,主要包括DROP、CREATE、ALTER、GRANT、REVOKE、TRUNCATE等操作。

  1. 内模式

内模式对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据最低一级的逻辑描述,它描述了数据在存储介质上存储方式的物理结构,对应着实际存储在外存储介质上的数据库。

二级映像

数据库系统的三级模式对应数据的三个抽象级别。为了能在内部实现三个抽象层次的联系和转换,DBMS在这三个级别之间提供了两层映像:外模式/模式映像和模式/内模式映像。

外模式/模式映像使数据具有较高的逻辑独立性。它对应了该外模式与模式之间的对应关系。这些映像定义通常包含在各自外模式的描述中。当模式改变时,DBA要对相关的外模式/模式映像做相对应的改变,以使外模式保持不变。应用程序是依据数据的外模式编写的,外模式不变应用程序就没必要修改。所以,外模式/模式映像功能保证了数据与程序的逻辑独立性。

模式/内模式映像使数据具有较高的物理独立性。它定义了数据库全局逻辑结构与存储结构之间的对应关系。该映像定义通常包含在模式描述中。当数据库的存储结束了,DBA要对模式/内模式映像做对应的改变,以使模式保持不变。模式不变,与模式没有直接联系的应用程序也不会改变。所以,模式/内模式映像功能保证了数据与程序的物理独立性。

相关文章:

  • C#笔记13 线程同步概念及其实现,详解lock,Monitor,Mutex代码用法
  • 【Linux】Linux 可重入函数
  • 简单好用的OCR API
  • 基于Service Worker实现WebRTC局域网大文件传输能力
  • LLM Attention and Rotary Position Embedding(旋转位置编码)
  • Rust的数据类型
  • 【python + flask】字典字段对模型字段的自动赋值,抽象编程思维培养,框架能力
  • SpringCloud微服务-Eureka注册中心
  • pdf转word文档怎么转?分享4种转换方法
  • springboot/ssm宠物领养救助平台Java流浪动物救助管理系统web
  • 远程控制桌面,让电脑办公更简单
  • ROS 2的前世今生 | ROS 2学习笔记
  • 【Hack The Box】linux练习-- Mango
  • Scientific Reports|比较转录组分析揭示了杀菌剂氰烯菌酯对尖孢镰刀菌的抗性调控机制和杀菌活性
  • 显示DataFrame中每行(或列)中,每个位置以前出现过的最小值:cummin()函数
  • redis过期key的清理/删除策略
  • 基于JavaWeb SSM bootStrap 校园二手市场管理系统的设计与实现
  • 博客系统前端页面
  • Kotlin Flow响应式编程,操作符函数进阶
  • Postman高频面试题及答案汇总(接口测试必备)
  • kaldi安装流程
  • 飞行机器人专栏(八)-- AGX Xavier 通信、控制及视觉应用开发
  • ZooKeeper设置ACL权限控制,删除权限
  • 前端面试题(JS部分)
  • 在博客园随笔中插入3D分子模型
  • 2009年数学二真题复盘
  • 零基础入门JavaWeb——Web基本概念
  • SpringBoot+Vue项目实现身体健康诊疗系统
  • cpu门禁电梯卡复制测试过程
  • DGL学习笔记——第一章 图
  • nginx配置https访问 生成ssl自签名证书,浏览器直接访问
  • Spring实战之容器、上下文、Bean的生命周期