ORACLE数据字典

1. 

select * from DICTIONARY(DICT)


ORACLE数据字典_第1张图片

用户能够查看哪些数据字典视图

3类:

ALL_视图,  DBA_视图,USER_视图


2.

select * from DICT_COLUMNS where table_name='DBA_2PC_NEIGHBORS'

ORACLE数据字典_第2张图片



能够查看DICTIONARY某一视图所拥有的列的信息


备注:DBA_2PC_NEIGHBORS的结构

select * from DBA_2PC_NEIGHBORS


ORACLE数据字典_第3张图片


3.目录

select * from USER_CATALOG(CAT)


ORACLE数据字典_第4张图片

可显示用户拥有的表,视图,同义词和序列。

列出了用户可以从中选择记录的所有对象,即可在查询的from子句中列出的任何对象。



4.对象

select * from USER_OBJECTS(OBJ)

ORACLE数据字典_第5张图片


可检索所有类型的信息,包含表,视图,同义词,序列,触发器,java类,程序包,库,索引函数等。


5.表

SELECT * FROM USER_TABLES(TABS)

ORACLE数据字典_第6张图片



显示USER_OBJECTS视图中对象的更多信息


6.列

select * from USER_TAB_COLUMNS(COLS)  WHERE  table_name='BD_PSNDOC'


ORACLE数据字典_第7张图片

显示对象的列的信息


7.视图

select * from USER_VIEWS


ORACLE数据字典_第8张图片

8.同义词

select * from USER_SYNONYMS(SYN)

ORACLE数据字典_第9张图片


9.序列

select * from USER_SEQUENCES(SEQ)

ORACLE数据字典_第10张图片


10.回收站

select * from USER_RECYCLEBIN(RECYCLEBIN)

ORACLE数据字典_第11张图片


可以使用flashback table 命令恢复已经删除的表和相关对象。为了查询回收站中当前的对象,可以查询USER_RECYCLEBIN视图。无论对象是否可以恢复(Can_Undrop列),或者对象是否由于其相关的基对象被删除而删除(Base_Object列值),都可以查看源对象名。


通过DBA_RECYCLEBIN视图,DBA可以查看所有用户的回收站的所有对象。


11.约束

select * from USER_CONSTRAINTS

ORACLE数据字典_第12张图片


Constraint_Type列的有效值如下:

C   CHECK约束,包含一些NOT NULL

P   主键约束

R  外键(引用)约束

U   唯一约束

V  WITH CHECK OPTION约束(用于视图)

O  WITH READ ONLY约束(用于视图

通过这个视图,可以访问约束信息。此信息在试图更改数据约束或解决应用程序的数据问题时非常有用。



如果在创建约束时未给约束赋予名称,则Oracle将生成一个唯一的约束名。如果约束名由系统生成,则通过Generated列指出该事实。


如果延迟一个约束(由Deferred列指出),则该约束不能在事务处理期间实施。列如,如果在相关表中执行大量的更新操作,并且不能保证事务处理的顺序正确。就可以决定延迟在表上检查的约束,直到所有的更新操作完成为止。


ALL_CONSTRAINTS 视图列出了用户或PUBLIC能访问的所有表的约束。

DBA_CONSTRAINTS视图列出了数据库中的所有约束。


12. 约束列

select * from USER_CONS_COLUMNS



ORACLE数据字典_第13张图片


Position列很重要,组合列索引的顺序,与where的查询效率有关。


13 约束异常

EXCEPTIONS

对于已经有数据的表来说,启用约束时可能会遇到数据内的约束冲突问题。

列如,你可能想在某一列上创建主键约束,但在这样的列上创建主键约束会失败

(因为违反了约束的唯一性)


创建EXCEPTIONS表

在Oracle主目录下的rbdms/admin目录中存在一个脚本文件,utlexcpt.sql 用于创建EXCEPTIONS表。


alter table  NEWSPAPER enable PRIMARY KEY

exceptions into  EXCEPTIONS;


ORA-02437:cannot enable (NEWSPAPER .SYS_C00516) - primary key violated

此约束创建失败,并且违反约束的人所有行的引用都被放置在EXCEPTIONS表中。


select  owner ,table_name , constraint  from EXCEPTIONS;

owner                    table_name          constraint  

-------------------------------------------------------------------

PRACTICE              NEWSPAPER          SYS_C00516

PRACTICE              NEWSPAPER          SYS_C00516


有2行违反了SYS_C00516约束。

通过以下sql能查到NEWSPAPER 表中的哪些行对应于这些异常

select * from  NEWSPAPER   where RowID  in (select Row_ID   from EXCEPTIONS);



14.表注释

USER _TAB_COMMENTS

select * from USER_TAB_COMMENTS

ORACLE数据字典_第14张图片


为表添加注释,使用comment命令。

comment on table BIRTHDAY is  'BIRTHDAY  list for Blacksburg  employees';

删除注释

comment on table BIRTHDAY is '';


15. 列注释

select * from USER_COL_COMMENTS

ORACLE数据字典_第15张图片


为列添加注释,使用comment命令。

comment on table BIRTHDAY.AGE  is  'Age in  years';

删除注释

comment on table BIRTHDAY.AGE    is '';


16.索引USER_INDEXES (IND)

select * from USER_INDEXES  where table_name='BD_PSNDOC'

ORACLE数据字典_第16张图片


17 索引列

select * from USER_IND_COLUMNS  where table_name='BD_PSNDOC'

ORACLE数据字典_第17张图片


18 集群

select * from USER_CLUSTERS(CLU)

ORACLE数据字典_第18张图片

19 集群列

select * from USER_CLU_COLUMNS

ORACLE数据字典_第19张图片


20.抽象数据类型

select * from USER_TYPES

数据类型属性

select * from USER_TYPE_ATTRS

数据类型方法

select * from USER_TYPE_METHODS
select * from USER_METHOD_PARAMS

其他数据类型

USER_REFS,USER_COLL_TYPES,USER_NESTED_TABLES

大对象

select * from USER_LOBS

ORACLE数据字典_第20张图片


21 数据库连接

select * from USER_DB_LINKS

select * from ALL_DB_LINKS


22. 物化视图

select * from USER_MVIEWS

物化视图日志

select * from USER_MVIEW_LOGS


23 触发器

select * from USER_TRIGGERS

该用户所拥有的触发器



select * from ALL_TRIGGERS


24 过程、函数、程序包

select * from USER_SOURCE

ORACLE数据字典_第21张图片


select * from ALL_SOURCE


25 错误代码

select * from USER_ERRORS



SQL*Plus中的show errors 命令检查USER_ERRORS数据字典视图,已显示与过程对象最近的编译有关的错误。


26 代码大小

select * from USER_OBJECT_SIZE

ORACLE数据字典_第22张图片


用于查询对象在SYSTEM表空间中所使用的空间量。


27.维度



select * from USER_DIMENSIONS


28.表空间

select * from USER_TABLESPACES



空间限额

select * from USER_TS_QUOTAS

select * from USER_SEGMENTS

ORACLE数据字典_第23张图片



select * from USER_EXTENTS

ORACLE数据字典_第24张图片


分区

select * from USER_PART_TABLES


可用空间

select * from USER_FREE_SPACE

ORACLE数据字典_第25张图片


29.用户

select * from USER_USERS




资源限制

select * from USER_RESOURCE_LIMITS

ORACLE数据字典_第26张图片



表的权限

select * from USER_TAB_PRIVS




列权限

select * from USER_COL_PRIVS

系统权限

select * from USER_SYS_PRIVS

ORACLE数据字典_第27张图片


30.角色

select * from USER_ROLE_PRIVS









你可能感兴趣的:(oracle)