Oracle的数据字典是Oracle数据库的重要组成部分之一,它随着Oracle的版本升级产生者不断的

     变化。体现为不同用户下的一些表和视图。需要留意的是,数据字典的名称是大写的英文字符。它存

     放着用户信息,用户的权限信息,所有的数据对象的信息,表的约束条件,相关视图等等。

              下面是Sql语句对于数据字典的相关操作,权当练手了!

/*查看详细信息*/ SELECT *FROM user_users; /*查看权限信息*/ SELECT *FROM role_sys_privs; /*查看用户角色信息*/ SELECT *FROM user_role_privs; /*2、查询和索引有关的数据字典*/ SELECT *FROM Dictionary WHERE instr(comments,'index')>0; SELECT *FROM user_indexes; /*3、一条sql查询用户的名字以及其默认的表空间*/ SELECT username ,   default_tablespace FROM user_users; /*Tips:用户名以及表空间信息存储在user_users这个视图中*/ /*4、查看系统权限和表级权限*/ SELECT * FROM user_SYS_privs; SELECT *FROM user_tab_privs; /*5、查看用户下所有的表*/ SELECT *FROM user_tables; SELECT *FROM cat; /*6查看包含指定字符的表的名字*/ SELECT *FROM User_Objects WHERE instr(object_name,'E')>0; SELECT *FROM User_Tables WHERE instr(user_tables.Table_Name,'E') >0; /*Tips:前者查询的是对象,因此一般查询到的内容会多一些*/ /*7、查询某个表的创建时间*/ SELECT object_name,   created FROM User_Objects WHERE object_name=upper('&table_name'); /*8、查询某个表的空间大小*/ SELECT SUM(bytes)/(1024*1024) AS "size(M)" FROM User_Segments WHERE segment_name=upper('&table_name2') ; /*9与索引相关的操作*/ --查看索引的种类。名字,以及索引的表 SELECT User_Indexes.Index_Name,   index_type,   User_Indexes.Table_Name FROM User_Indexes; --查看索引被索引的字段 SELECT * FROM user_ind_columns WHERE index_name=upper('&index_name'); /*10、与数据库有关的sql操作*/ --查看表空间的名称大小 SELECT t.tablespace_name,   ROUND(SUM(bytes/(1024*1024)),0) ts_size FROM dba_tablespaces t,   dba_data_files d WHERE t.tablespace_name = d.tablespace_name GROUP BY t.tablespace_name; --查看表空间的物理文件的名称以及大小 SELECT tablespace_name,   file_id,   file_name,   ROUND(bytes/(1024*1024),0) total_space FROM dba_data_files ORDER BY tablespace_name; --查看控制文件和日志文件 SELECT name FROM V&Controlfile; SELECT member FROM V&Logfile;
               好了,Over!