ORACLE数据字典

本文详细介绍了Oracle数据字典的各个重要视图,包括用户数据字典视图、表、列、视图、同义词、序列、约束、索引、表空间、用户权限等,帮助读者理解和查询数据库的各种元数据信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 

select * from DICTIONARY(DICT)



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

3类:

ALL_视图,  DBA_视图,USER_视图


2.

select * from DICT_COLUMNS where table_name='DBA_2PC_NEIGHBORS'




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


备注:DBA_2PC_NEIGHBORS的结构

select * from DBA_2PC_NEIGHBORS




3.目录

select * from USER_CATALOG(CAT)



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

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



4.对象

select * from USER_OBJECTS(OBJ)



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


5.表

SELECT * FROM USER_TABLES(TABS)




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


6.列

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



显示对象的列的信息


7.视图

select * from USER_VIEWS



8.同义词

select * from USER_SYNONYMS(SYN)



9.序列

select * from USER_SEQUENCES(SEQ)



10.回收站

select * from USER_RECYCLEBIN(RECYCLEBIN)



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


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


11.约束

select * from USER_CONSTRAINTS



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





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



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

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

删除注释

comment on table BIRTHDAY is '';


15. 列注释

select * from USER_COL_COMMENTS



为列添加注释,使用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'



17 索引列

select * from USER_IND_COLUMNS  where table_name='BD_PSNDOC'



18 集群

select * from USER_CLUSTERS(CLU)


19 集群列

select * from USER_CLU_COLUMNS



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



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



select * from ALL_SOURCE


25 错误代码

select * from USER_ERRORS



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


26 代码大小

select * from USER_OBJECT_SIZE



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


27.维度



select * from USER_DIMENSIONS


28.表空间

select * from USER_TABLESPACES



空间限额

select * from USER_TS_QUOTAS

select * from USER_SEGMENTS




select * from USER_EXTENTS



分区

select * from USER_PART_TABLES


可用空间

select * from USER_FREE_SPACE



29.用户

select * from USER_USERS




资源限制

select * from USER_RESOURCE_LIMITS




表的权限

select * from USER_TAB_PRIVS




列权限

select * from USER_COL_PRIVS

系统权限

select * from USER_SYS_PRIVS



30.角色

select * from USER_ROLE_PRIVS









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值