怎么统计oracle数据库下所有表的数量

怎么统计oracle数据库下所有表的数量,第1张

select count() from user_tables;-----某个用户下所有表

select count() from dba_tables;------数据库下所有表

楼上的只统计了一个月的吧

WITH t AS

     (SELECT     ROWNUM

            FROM DUAL

      CONNECT BY ROWNUM <= 12)

SELECT    TO_CHAR (LAST_DAY (TO_DATE (   TO_CHAR (SYSDATE, 'YYYY')

                                      || LPAD (TO_CHAR (ROWNUM), 2, 0),

                                      'YYYYMM'

                                     )

                            ),

                   'YYYY-MM'

                  )

       || '月',

          TO_CHAR (LAST_DAY (TO_DATE (   TO_CHAR (SYSDATE, 'YYYY')

                                      || LPAD (TO_CHAR (ROWNUM), 2, 0),

                                      'YYYYMM'

                                     )

                            ),

                   'DD'

                  )

       || '天'

  FROM t

直接全选复制粘贴运行

select from dba_users; 查看数据库里面所有用户,前提是你是有dba权限的帐号,如sys,system

select from all_users; 查看你能管理的所有用户!

select from user_users; 查看当前用户信息 !

-- 查询你 当前用户下,有哪些表

SELECT FROM user_tables

-- 查询你 当前用户下, 可以访问哪些表 [也就是访问自己 和 其他用户的]

SELECT FROM all_tables

-- 查询当前数据库所有的表, 需要你有 DBA 的权限

SELECT FROM dba_tables

大型数据库系统中往往要用到查询统计 但是对于数据量大的系统 用户在进行复杂的查询统计时往往感到速度很慢 不能满足应用要求 这就要求我们在设计数据库系统时进行合理设置 提高查询统计的速度 本文结合笔者的项目开发经验 阐述具体的设置方法

以oracle 数据库系统为例 我们在开发大型oracle数据库系统时结合项目的特点 本着安全 高效的原则对数据库进行了一些物理设计 从而大大提高了数据库的查询统计速度 总结为如下几点

)扩大数据表空间到 M 用于存放本系统的数据;

)段盘区的初始大小为 K 增长大小为 K 增长幅度为 ;

)用户临时空间增大 M;

)系统临时表空间和回滚段表空间增大 M 并且新建 个回滚段;

)需要经常联结查询 而且数据量又大的库存表 名录表 收发料表放在一簇内;

)提供定时备份 备份文件放在另外的机器上

设置数据表空间的SQL语句如下

CREATE TABLESPACE WXGL_DATA  DATAFILE  WXGL_DATA ORA  SIZE  M ONLINE;

增加系统临时表空间和回滚段表空间的SQL语句如下

ALTER TABLESPACE TEMPORARY_DATA ADD DATAFILE  TMP ORCL ORA  SIZE  M; ALTER TABLESPACE ROLLBACK_DATA ADD DATAFILE  RBS ORCL ORA  SIZE  M;

将数据空间设置在指定的数据文件的SQL语句如下

CREATE USER ZBGL IDENTIFIED BY ZBGL; GRANT DBA TO ZBGL; ALTER USER ZBGL DEFAULT TABLESPACE WXGL_DATA  TEMPORARY TABLESPACE TEMPORARY_DATA;   设置五个回滚段的SQL语句如下 SELECT SEGMENT_NAME FROM DBA_ROLLBACK_SEGS WHERE INITIAL_EXTENT <   AND UPPPER(OWNER) =  PUBLIC ; SELECT UPPER(STATUS) FROM DBA_ROLLBACK_SEGS WHERE UPPER(SEGMENT_NAME) =  ALTER ROLLBACK SEGMENT RB  OFFLINE; ALTER ROLLBACK SEGMENT RB  OFFLINE; ALTER ROLLBACK SEGMENT RB  OFFLINE; ALTER ROLLBACK SEGMENT RB  OFFLINE; ALTER ROLLBACK SEGMENT RB  OFFLINE; DROP ROLLBACK SEGMENT RB ; DROP ROLLBACK SEGMENT RB ;

DROP ROLLBACK SEGMENT RB ; DROP ROLLBACK SEGMENT RB ; DROP ROLLBACK SEGMENT RB ; CREATE PUBLIC ROLLBACK SEGMENT RB  TABLESPACE ROLLBACK_DATA STORAGE (INITIAL   NEXT   MAXEXTENTS  ); CREATE PUBLIC ROLLBACK SEGMENT RB  TABLESPACE ROLLBACK_DATA STORAGE (INITIAL   NEXT   MAXEXTENTS  ); CREATE PUBLIC ROLLBACK SEGMENT RB  TABLESPACE ROLLBACK_DATA STORAGE (INITIAL   NEXT   MAXEXTENTS  ); CREATE PUBLIC ROLLBACK SEGMENT RB  TABLESPACE ROLLBACK_DATA STORAGE (INITIAL   NEXT   MAXEXTENTS  ); CREATE PUBLIC ROLLBACK SEGMENT RB  TABLESPACE ROLLBACK_DATA STORAGE (INITIAL   NEXT   MAXEXTENTS  ); ALTER ROLLBACK SEGMENT RB  ONLINE; ALTER ROLLBACK SEGMENT RB  ONLINE; ALTER ROLLBACK SEGMENT RB  ONLINE; ALTER ROLLBACK SEGMENT RB  ONLINE; ALTER ROLLBACK SEGMENT RB  ONLINE; MIT;

将数据量大的库存表等放在一簇内的SQL语句如下

lishixinzhi/Article/program/Oracle/201311/18984

以上就是关于怎么统计oracle数据库下所有表的数量全部的内容,包括:怎么统计oracle数据库下所有表的数量、oracle数据库中怎么查询当前年每月的天数,按自然月统计,谢谢!、怎么查看oracle数据库中创建的数据库个数等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9800661.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存