数据字典(datadictionary)是 Oracle数据库的一个重要组成部分,这是一组用于记录数据库信息的表
u 数据库中所有方案对象(schemaobject)的定义(包括表,视图,索引,簇,同义词,序列,过程,函数,包,触发器等等)
u 数据库为一个方案对象分配了多少空间,以及该对象当前使用了多少空间
u 列的默认值
u 完整性约束(integrityconstraint)信息
u 数据库用户信息
u 每个用户被授予(grant)的权限(privilege)与角色(role)
u 审计(audit)信息,例如哪个用户对某个方案对象进行了访问或更新操作
u 数据库中的其他概要信息
数据字典,分为数据字典表(视图)和动态性能表(视图)
--数据字典:
基表(以$结尾):用于存放所有数据库对象信息
--数据字典视图:
DBA_ 数据库中所有对象的信息。
ALL_ 用户有权限访问的所有的对象.
USER_ 用户自己创建的
---常用的数据字典视图:
user_tables: 该用户表的信息
all_tables
dba_tables
user_indexes: 该用户索引的信息
all_
dba-_
user_views: 该用户视图的信息
user_users : 当前用户的信息
dba_constraints 约束信息
dba_extents、dba_segments区,段的信息
dba_sys_privs,dba_roles 权限角色信息等
dba_data_files 数据文件信息
1. Oracle server使用它来获取用户、schema对象、存储结构信息
2. 执行DDL语句时,oracle server会去修改它
3.用户和DBA把它作为只读查询来获取数据库的信息
--基表(以$结尾):用于存放所有数据库对象信息
基于数据字典基表的数据字典视图(DBA_, ALL_, USER_)
数据字典表 由$ORACLE_HOME/rdbms/admin/sql.bsq 脚本创建,
数据字典视图 由脚本$ORACLE_HOME/rdbms/admin/catalog.sql 创建
动态性能表并不是真正的表,