第三章 ORACLE数据字典.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ORACLE数据字典 (一)数据字典概念 Oracle数据字典是由表和视图组成,存储有关数据库结构信息的一些数据库对象。数据字典描述了实际数据是如何组织的。比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访问权限信息等。对它们可以象处理其他数据库表或视图一样进行查询,但不能进行任何修改。它们存放在SYSTEM表空间中,当用户在对数据库中的数据进行操作时遇到困难就可以访问数据字典来查看详细的信息。数据字典不仅是数据库的核心,还是所有用户的一个重要工具,包括终端用户、程序员和数据库管理员。因为数据字典的只读性,我们只能对它的表或视图使用SQL查询语句。 Oracle数据库字典通常是在创建和安装数据库时被创建的,Oracle数据字典是Oracle数据库系统工作的基础,没有数据字典的支持,Oracle数据库系统就不能进行任何工作。数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。 数据字典内容包括: 1,数据库中所有模式对象的信息,如表、视图、簇、索引、集群、同义词、序列、过程、方法、包、触发器等。 2,分配多少空间,当前使用了多少空间等。 3,列的缺省值。 4,约束信息的完整性。 5,Oracle用户的名字。 6,用户及角色被授予的权限。 7,用户访问或使用的审计信息。 8,其它产生的数据库信息。 (二)数据字典分类 数据字典按照存在的形式分为数据字典表和数据字典视图。 2.1数据字典表 数据字典表里的数据是Oracle系统存放的系统数据,而普通表存放的是用户的数据。为了方便的区别这些表,这些表的名字都是用$结尾,这些表属于SYS用户。 数据字典表由$ORACLE_HOME/rdbms/admin/sql.bsq 脚本创建, 这个脚本里又调用了其他的脚本来创建这些数据字典表。 在那些创建脚本里有基表的创建SQL。这些数据字典表,只有Oracle 能够进行读写。基表是存储有关数据库的信息的底层表。基表是在任何 Oracle 数据库中首先创建的对象。在使用 CREATE DATABASE 创建数据库时,只要 Oracle 服务器运行 sql.bsq 脚本,就会自动创建这些对象。只有 Oracle 服务器才能对这些基表执行写入操作。用户很少直接访问基表,因为其中的数据大多数都是以隐含格式存储的。切勿使用 DML 命令直接更新基表,但 AUD$ 表除外。例如,IND$ 表就是一个基表,它包含有关数据库中的索引的信息。 SYS用户下的这些数据字典表,存放在system 表空间下面,表名都用$结尾,为了便于用户对数据字典表的查询, Oracle对这些数据字典都分别建立了用户视图,这样即容易记住,还隐藏了数据字典表表之间的关系,Oracle针对这些对象的范围,分别为: DBA:所有方案中的视图(可以看到所有数据字典里的信息) ALL:用户可以访问的视图(可以看到所有这个用户可以看到的信息) USER:用户方案中的视图(仅仅是这个用户拥有的信息) 三者直接的关系: Oracle为了便于汇总数据字典表的信息,把所有的数据字典都汇集到dictionary表里了,通过对这个表的查询,我们可以很方便的找到数据库提供的数据字典。 SQL desc dictionary SQL select * from dictionary where table_name=USER_TABLES; 2.2数据字典视图 数据字典视图是基表的汇总,可以更有效地显示基表信息。例如,在数据字典视图中,除了显示对象编号外还会使用对象名。数据字典视图是在运行 CREATE DATABASE 命令之后使用 脚本:$ORACLE_HOME/rdbms/admin/catalog.sql 创建,该脚本也只是一个总的调用,在该脚本里由调用了其他的脚本。在那些脚本里,可以看到视图的创建SQL。 这是因为这个脚本会创建动态视图,所以在做DB升级的时候,也需要执行这个脚本,重新创建视图。 数据字典视图分2类:静态数据字典(静态性能视图)和动态数据字典(动态性能视图) 2.2.1静态性能视图 静态性能视图也称为静态数据字典。主要是在用户访问数据字典时不会发生改变的,这类数据字典主要是由表和视图组成。数据字典中的表是不能直接被访问的,但是可以访问数据字典中的视图。 静态数据字典中的视图分为三类,它们分别由三个前缀够成:user_xxx、 all_xxx、 dba_xxx。 USER_XXX:该视图存储了当前用户所拥有的对象的信息。(即所有在该用户模式下的对象) ALL_XXX:该试图存储了当前用户能够访问的对象的信息, 而不是当前用户拥有的对象。(与user_xxx相比,all_xxx 并不需要拥有该对象,只需要具有访问该对象的权限即可) DBA_XXX:该视图存

文档评论(0)

xiaofei2001129 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档