数据库模式(schema)是数据结构的逻辑容器,被称作模式对象(schema objects)
每一个数据库用户拥有一个和用户名相同的模式,例如hr用户拥有hr模式。
在一个产品数据库中,模式的拥有者通常是数据库应用程序而不是一个人。
在一个模式中,每一个模式对象都有一个唯一的名字。如hr.employees代表hr模式下的employees表。
如下图所示:
模式对象的类型
最重要的模式对象是关系型数据库中的表(table), Oracle SQL使你能创建和操作其他类型的模式对象。如下:
1.索引(Indexes)
2.分区(Partitions)
3.视图(Views)
4.序列(Sequences)
5.维度(Dimensions)
6.同义词(Synonyms)
7.PL/SQL子程序和包(PL/SQL subprograms and packages)
模式对象存储
在逻辑存储结构中,一些模式对象存储数据称作片段(segments)。
Oracle数据库存储模式对象逻辑上是在一个表空间(tablespace)里,表空间和模式没有关系:一个表空间可以包含不同的模式,一个模式中的对象可以包含在不同的表空间。每一个对象的数据在物理上包含在一个或多个数据文件中。
如下图是一种可能的配置,其中一个表的数据片段(segment)跨越了两个数据文件。这两个数据文件都在同一个表空间里。一个片段(segment)不能跨越多个表空间。
模式对象依赖性(Dependencies)
一些模式对象引用其他对象,例如,A对象引用B对象,那么A是dependent object,B是referenced object。
Oracle数据库提供了一个自动机制来保证依赖对象始终代表最新的引用对象。
Oracle Database Concepts:介绍模式对象(Introduction to Schema Objects)