oracle三级模式及二级映像

  模式(schema)是数据库的一个名词,大部分的数据库在结构上都有三级模式的特征,了解下基本的概念,有助于后续深入的学习。

  用老罗坚果pro发布会的话说就是,不罗嗦,先上图。

      (图片来源于oracle-从入门到精(放)通(弃))

  三级模式的名称,分别为外模式(也叫子模式/用户模式),概念模式(也叫模式)和内模式(也叫存储模式)。

  从图上可以看出,数据库的外模式可以有多个,模式和内模式都只有一个。

  简单的理解总结:

  概念模式:oracle数据库全局逻辑结构,类似于设计方式;

  外模式:对应用户的对象,如表,索引等;

  内模式:对应存储结构,如如逻辑存储结构(表空间、区、段、块等)、物理存储结构(数据文件、控制文件、重做日志文件、初始化参数文件、配置文件等)。

概念模式(模式)

  概念模式是对oracle数据库的整体逻辑结构的一种抽象描述,不涉及具体的硬件和软件环境。

  概念模式主要描述数据的概念记录类型及其关系,还包含数据间的一些语义约束,对它的描述可以用DBMS中的DDL定义。----引自《oracle从入门到精通》

外模式

  这个就是经常用到的了,或者经常和用户打交道的模式。一般一个用户对应一个外模式。

  可以把外模式简单的理解为一个逻辑容器,存放的内容为对象的集合,这里边的对象,就是可以和用户打交道的各种数据库对象,比如表,索引,表分区/视图等等。

如何创建外模式schema

  创建数据库用户就可以了,创建完成后,会默认生成以用户名命名的schema。数据库安装的时候,会默认创建sys和system用户,因此也会有sys和system的schema。

  比如创建一个数据库用户invokerr,创建完成后,也就随之创建了一个缺省的schema,schema名字也为invokerr,invokerr可以看作是这个逻辑分区的管理员,访问本schema内的对象,如select * from user,可以不用添加schema名,相当于select * from invokerr.user。

  要访问其他schema的对象,就需要添加所属了,比如select * from scott.emp。

  oracle对象完整名称为schema.object,而不是user.object,只不过schema名和user名是相同的。scott(schema).emp(table)。

  DBMS提供子模式数据描述语言(子模式DDL)来严格定义子模式。----引自《oracle从入门到精通》

内模式

  也称存储模式(Storage Schema),它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式(例如,记录的存储方式是顺序存储、按照B树结构存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密)。数据库只有一个内模式。

二级映像

  映像就是一种对应关系,oracle的二级映像实际上是三种模式之间的转换关系。

  二级映像分别为外模式/模式,模式/内模式映像,作用就是在有一方发生改变后,通过改变映像,使另一方不必发生变化。

外模式/模式

  保证数据与程序的逻辑独立性。

  由于程序是依据外模式编写,在模式发生改变时,通过改变映像,外模式可以不用变化,这样程序也就不用改动。

模式/内模式

  保证数据与程序的物理独立性。

  内模式发生变化,可以改变映像,保证模式不变,这样外模式和程序也就不用发生变化。

最新文章

  1. PostgreSQL
  2. HTML入门篇
  3. Android6.0动态权限申请
  4. localstorage 的属性改变问题
  5. Android下载压缩文件与解压案例
  6. jq实现点击弹出框代码
  7. Jmeter 中使用非GUI启动进行压力测试
  8. C++中explicit关键字的作用
  9. PL/0语言编译器的设计与实现
  10. Android开发(三十一)——重复引用包错误Conversion to Dalvik format failed
  11. PHPSTORM/IntelliJ IDEA 常用 设置配置优化
  12. 配置DNS服务器IP
  13. 关于C/C++函数指针声明的理解
  14. 移动网络山寨版(OpenBTS)的意义或者无意义 【1】
  15. [Swift]LeetCode1030. 距离顺序排列矩阵单元格 | Matrix Cells in Distance Order
  16. Halcon示例:print_quality 字符验证
  17. dubbo系列一、dubbo背景介绍、微服务拆分
  18. Serializers序列化组件
  19. SSM_CRUD新手练习(2)配置文件
  20. IOS音频1:之采用四种方式播放音频文件(一)AudioToolbox AVFoundation OpenAL AUDIO QUEUE

热门文章

  1. C# Webclient 和 Httpclient如何通过iis authentication 身份验证。
  2. linux-redhat-iso 下载
  3. JS判断PC和移动端设备
  4. JAVA-Socket通信笔记
  5. linux -- 个人笔记
  6. kotlin 语言入门指南(二)--代码风格
  7. Ubuntu 挂载硬盘分区
  8. 初码-Azure系列-迁移PHP应用至Azure的一些实践记录和思考
  9. Bootstrap快速入门
  10. CAP原理、一致性模型、BASE理论和ACID特性