oracle常用语句

浏览: 1166

1,查看表空间的使用情况 

SELECT A.TABLESPACE_NAME,
       ROUND(A.TOTAL_SIZE) "TOTAL_SIZE(MB)",
       ROUND(A.TOTAL_SIZE) - ROUND(B.FREE_SIZE, 3) "USED_SIZE(MB)",
       ROUND(B.FREE_SIZE, 3) "FREE_SIZE(MB)",
       ROUND(B.FREE_SIZE / TOTAL_SIZE * 100, 2) || '%' FREE_RATE
  FROM (SELECT TABLESPACE_NAME, SUM(BYTES) / 1024 / 1024 TOTAL_SIZE
          FROM DBA_DATA_FILES
         GROUP BY TABLESPACE_NAME) A,
       (SELECT TABLESPACE_NAME, SUM(BYTES) / 1024 / 1024 FREE_SIZE
          FROM DBA_FREE_SPACE
         GROUP BY TABLESPACE_NAME) B
 WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME(+)

2.查看建表语句的数据字典

SELECT T1.TABLE_NAME AS 表英文名,
       T2.COMMENTS AS 表中文名,
       T1.COLUMN_ID AS 字段序号,
       T1.COLUMN_NAME AS 字段英文名,
       T3.COMMENTS AS 字段中文名,
       DECODE(T1.DATA_TYPE,
              'NUMBER',
              DECODE(T1.DATA_PRECISION,
                     '',
                     'INTEGER',
                     'NUMBER(' || T1.DATA_PRECISION || ',' || T1.DATA_SCALE || ')'),
              'TIMESTAMP(6)',
              T1.DATA_TYPE,
              'DATE',
              T1.DATA_TYPE,
              T1.DATA_TYPE || '(' || T1.DATA_LENGTH || ')') AS 数据类型
  FROM USER_TAB_COLUMNS T1
  LEFT JOIN USER_TAB_COMMENTS T2
    ON T1.TABLE_NAME = T2.TABLE_NAME
  LEFT JOIN USER_COL_COMMENTS T3
    ON T1.TABLE_NAME = T3.TABLE_NAME
   AND T1.COLUMN_NAME = T3.COLUMN_NAME
ORDER BY T1.TABLE_NAME,T1.COLUMN_ID ASC
推荐 0
本文由 阿门2016 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册