Oracle系统视图

VIEW TABLES

1、DBA_TABLES --查看系统里所有表的信息,只有DBA权限用户才可查看
SELECT * FROM DBA_TABLES WHERE OWNER='HR' AND TABLE_NAME LIKE '%TEST\_%' ESCAPE '\';

2、ALL_TABLES   --查看所有当前用户有权限访问的所有表的信息
SELECT * FROM ALL_TABLES WHERE OWNER='HR' AND TABLE_NAME LIKE '%TEST\_%' ESCAPE '\';

3、USER_TABLES --查看用户权限可看的表信息
SELECT * FROM USER_TABLES WHERE OWNER='HR' AND TABLE_NAME LIKE '%TEST\_%' ESCAPE '\';

所以以上3个视图中,user_tables的范围最小,all_tables看到的东西稍多一些,而dba_tables看到最多的信息

VIEW COLUMNS

1、DBA_TAB_COLS/DBA_TAB_COLUMNS --查看系统里所有表的信息,只有DBA权限用户才可查看
SELECT * FROM DBA_TAB_COLS WHERE TABLE_NAME='HR.TEST_CALC' ;

2、ALL_TAB_COLS/ALL_TAB_COLUMNS --查看所有当前用户有权限访问的所有表的信息
SELECT * FROM DBA_TAB_COLS WHERE TABLE_NAME='HR.TEST_CALC' ;


3、USER_TAB_COLS/USER_TAB_COLUMNS --查看用户权限可看的表信息
SELECT * FROM DBA_TAB_COLS WHERE TABLE_NAME='HR.TEST_CALC' ;

不同的是*_TAB_COLS比*_TAB_COLUMNS多几列:
HIDDEN_COLUMN VARCHAR2(3)
VIRTUAL_COLUMN VARCHAR2(3)
SEGMENT_COLUMN_ID NUMBER
INTERNAL_COLUMN_ID NOT NULL NUMBER
QUALIFIED_COL_NAME VARCHAR2(4000)
因此使用时要根据实际情况去使用COLS或者COLUMNS,如果需要全面的信息包括hidden的信息必须用COLS

VIEW SEGMENTS

1、DBA_SEGMENTS --查看所有分区段(有分区的表)、分区部门、分区表空间的分区段(segment)视图,前提是DBA权限
SELECT SEGMENT_NAME,PARTITION_NAME,TABLESPACE_NAME FROM DBA_SEGMENTS WHERE SEGMENT_NAME='HR.TEST_CALC';

2、USER_SEGMENTS --查看用户的分区段(有分区的表)、分区部门、分区表空间的分区段(segment)视图
SELECT SEGMENT_NAME,PARTITION_NAME,TABLESPACE_NAME FROM USER_SEGMENTS WHERE SEGMENT_NAME='HR.TEST_CALC';

  

转载于:https://www.cnblogs.com/JeromeZ/p/5337854.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值