1、schema对象简介

数据库schema为一组数据结构的逻辑集合,称之为schema对象,schema对象最贱的为表和索引,schema对象由SQL创建和维护。

一个数据库用户拥有一个用户名和各种数据库权限,每个用户属于一个schema,这个schema的名称和用户的名称相同,这个schema包含的数据也就是这个用户所属的schema。例如,hr用户用一个hr的schema,这个schema包含的schema对象例如employee表。在一个生产环境的数据库中,一个schema的拥有者相当于一个数据库应用程序的一个用户。

在一个schema中,每个不同类型的schema对象有一个唯一的名称,例如:hr.employee表示表employee在hr这个schema中。

总结就是:一个用户有一个schema,在这个schema中包含着很多的schema对象,例如表、索引等

2、schema对象的类型:

在一个关系型数据库中,最重要的schema对象就是表,表是用行存储来保存数据

A、indexes(索引)

索引是一个schema对象,包含表中的每个索引列的入口,提供一种快捷的方式找到相关行,

B、partitions(分区)

partitions是一个大表或者一个索引的部分,每个partition有它自己的名称,也可以有它自己的存储特征

C、views(视图)

视图是将几个表或者视图中的数据的一种展现方式,可以当成是存储了一种查询,视图不会真正的存储数据

D、sequences(序列)

序列是由用户创建的对象,用来共享给多个用户生成整数,典型的是,序列可以当做用户主键值

E、dimensions(维度)

一个维度定义了一种父子关系在一对列的集合当中,所有的列必须来源于同一个表

F、synonyms(同义词)

同义词是表示其他schema对象的别名,所以,同义词相当于一个简单的别名,同义词不需要存储除了在数据字段中定义它

G、PL/SQL subprograms and packages

PL/SQL是oracle提供的对SQL的扩展

其他类型的对象同样存储在数据库中,并且由SQL创建和维护,但是不包含在schema之中,这些对象包括:数据库用户、角色、上下文、目录对象

3、schema对象的存储

一些schema对象存储在逻辑存储结构segment上,例如:一个未分区的堆组织的表或者一个索引会占用一个segment,而其他的schema对象,例如视图和序列,仅由一些元数据组成。

oracle数据库将schema对象存在在逻辑对象tablespace之中,要分清楚的是,schema和tablespace之间是没有关系的;一个表空间可以存储来自多个schema中的对象;schema对象也可以存储在不同的表空间中。各个对象的数据在物理上存储在一个或者多个数据文件之中。

一个segment可以跨多个数据文件,多个数据文件必须属于同一个表空间;一个segment不能跨多个表空间,只能包含在一个表空间之内。

4、schema对象的依赖性

一些schema对象引用了其他的对象,从而造成了schema对象的依赖性。例如:一个view中的查询引用了其他的表或者是视图,

查询依赖性的时候,使用下面语句即可:

select object_name,status from user_objects where object_name='object_name'.

状态有valid和invalid。

5、SYS和SYSTEM schema

所有的oracle数据库都有一个缺省的管理账户,管理员账户有最高的权限,并且具有DBA的义务,例如:启动关闭数据库,管理内存和存储,创建和管理数据库用户等

管理员账户SYS是在数据创建的时候自动创建的,这个账户可以管理oracle数据库的所有功能。

SYS schema用来存储数据的基表和数据字典视图,这些基表和视图是oracle数据库最重要的。在SYS schema中的表,只能由数据库自己进行维护,并且不能被任何用户修改。

SYSTEM账户是在数据库创建的时候自动创建的,SYSTEM schema用来存储额外的表和视图来展现管理信息和内部的表和视图用来其他的数据库管理信息。

用来不要使用SYSTEM schema用来存储无关管理员用户的表。

schema对象介绍的更多相关文章

  1. schema 对象的简单介绍

    官方文档链接地址 http://docs.oracle.com/cd/E11882_01/server.112/e40540/tablecls.htm#CNCPT010 Introduction to ...

  2. ASP.NET Web API 路由对象介绍

    ASP.NET Web API 路由对象介绍 前言 在ASP.NET.ASP.NET MVC和ASP.NET Web API这些框架中都会发现有路由的身影,它们的原理都差不多,只不过在不同的环境下作了 ...

  3. FastReport报表对象介绍一:“Text”对象

    FastReport中文网 http://www.fastreportcn.com/Article/70.html ------------------------------------------ ...

  4. 三HttpServletResponse对象介绍(1)

    转载自http://www.cnblogs.com/xdp-gacl/p/3789624.html Web服务器收到客户端的http请求,会针对每一次请求,分别创建一个用于代表请求的request对象 ...

  5. JavaScript Date对象介绍

    原文:JavaScript Date对象介绍 Date 日期和时间对象 1. 介绍 Date对象,是操作日期和时间的对象.Date对象对日期和时间的操作只能通过方法. 2. 构造函数 2.1 new ...

  6. HttpServletResponse对象介绍

    一.HttpServletResponse对象介绍

  7. Solr系列三:solr索引详解(Schema介绍、字段定义详解、Schema API 介绍)

    一.Schema介绍 1. Schema 是什么? Schema:模式,是集合/内核中字段的定义,让solr知道集合/内核包含哪些字段.字段的数据类型.字段该索引存储. 2. Schema 的定义方式 ...

  8. MySQL sys Schema 简单介绍-2

    之前在<MySQL sys Schema 简单介绍-1>中简单的介绍了,sys Schema库中的表.那么这些表都可以查询些什么信息呢?接下来本文将做下介绍. 1. 表的情况 1.1 统计 ...

  9. 【重温基础】16.JSON对象介绍

    本文是 重温基础 系列文章的第十六篇. 今日感受:静. 系列目录: [复习资料]ES6/ES7/ES8/ES9资料整理(个人整理) [重温基础]1-14篇 [重温基础]15.JS对象介绍 本章节复习的 ...

随机推荐

  1. lintcode 中等题:和大于S的最小子数组

    题目 和大于S的最小子数组 给定一个由 n 个整数组成的数组和一个正整数 s ,请找出该数组中满足其和 ≥ s 的最小长度子数组.如果无解,则返回 -1. 样例 给定数组 [2,3,1,2,4,3]  ...

  2. *[codility]CartesianSequence

    https://codility.com/programmers/challenges/upsilon2012 求笛卡尔树的高度,可以用单调栈来做. 维持一个单调递减的栈,每次进栈的时候记录下它之后有 ...

  3. [cocoapods] 如何卸载工程里的cocoapods

    1. 打开自己的工程所在文件夹 删除这4个文件 2. 打开工程,把红线的东西都删除掉 3. 只留下原来的4个,其余都删除掉

  4. centos下安装JDK8的方法

    判断是否安装 首先,我们得判断机子上是不是安装了jdk,好多人推荐使用java -version命令.我的计算机上使用java -version命令,内容如下: java version " ...

  5. windows本地无法启动sqlserver服务

    解决方法:进入服务列表后,选择sqlserver服务,右键然后选择属性,然后在登陆选项卡中,选择本地系统帐户,这样就可以启动sqlserver服务了

  6. 【翻译】JavaScript中的作用域和声明提前

    原文:http://www.adequatelygood.com/JavaScript-Scoping-and-Hoisting.html ===翻译开始=== 你知道下面的JavaScript脚本执 ...

  7. apache缓存

    http://www.t086.com/article/4256 http://www.360doc.com/content/09/0928/13/41237_6551659.shtml

  8. IO多路复用的几种实现机制的分析

    http://blog.csdn.net/zhang_shuai_2011/article/details/7675797 select,poll,epoll都是IO多路复用的机制.所谓I/O多路复用 ...

  9. SimpleDateFormat日期格式化

    public class T { /** * @param args */ public static void main(String[] args) { // TODO Auto-generate ...

  10. linux scp

    scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令.linux的scp命令可以在linux服务器之间复制文件和目录. scp命令的用处: scp ...