首页 > 开发 > 综合 > 正文

两个sql程序

2024-07-21 02:34:21
字体:
来源:转载
供稿:网友

  日常监测分析数据库和获取数据库中当前用户的数据对象的两个sql程序
  
  rem 这需要 统计某个具体用户的"Table,index,column,constraits"
  rem
  rem 全部表-列定义 table_cols.txt
   set lin 110 pages 3000
   column table_name format a30
   column data_type format a12
   column data_default format a8
   column column_name format a22
   column Cid format 999
   column Len format 9999
   column PRec format 99
   column Scale format 99
  
  select TABLE_NAME, COLUMN_ID "Cid", COLUMN_NAME, DATA_TYPE, DATA_LENGTH "Len",
   nvl(DATA_PRECISION,'-1') "Prec", nvl(DATA_SCALE,'-1') "Scale",
   NULLABLE, DATA_DEFAULT
  from USER_TAB_COLUMNS ;
  
  rem ======== TAB =============
  select * from tab;
  spool off
  
  spool user_indexes.txt
  rem
  rem 全部索引定义user_index.txt
   column table_name format a22
   column index_name format a28
   column index_type format a7
   column column_name format a18
   column # format 99
   column Init format 999999;
  select a.table_name, t.cache "C",a.index_name,
   column_position "#",column_name,
   UNIQUENESS,a.INITIAL_EXTENT/1024 "Init"
   from user_indexes a, user_ind_columns c,user_tables t
   where c.INDEX_NAME =a.INDEX_NAME
   and a.table_name= t.table_name
   order by a.table_name,a.index_name,column_position;
  spool off
  
  spool user_Obj_Table_Index.txt
  rem
  rem 用户对象,表和索引userObj_Table_Index.txt
   set lin 111 pages 333
   column table_name format a24
   column index_name format a32
   column tablespace_name a12
   column Init format 999999;
  rem 由于用户要关心的是我自己的具体数据的存放位置,下面分别得出index,tables
   select tablespace_name,table_name,cache,initial_extent/1024 "Init"
   from user_tables order by tablespace_name,table_name;
   select tablespace_name,table_name,index_name,initial_extent/1024 "Init"
   from user_indexes order by tablespace_name,table_name,index_name;
  spool off
  
  spool user_constraints.txt
  rem
  rem 全部表-列约束_user_constraints.txt
   column CONSTRAINT_NAME format a30
   column TABLE_NAME format a30
   column r_CONSTRAINT_NAME format a20
  
  select CONSTRAINT_NAME,
   CONSTRAINT_TYPE, TABLE_NAME, R_CONSTRAINT_NAME, DELETE_RULE
   from user_constraints
   order by CONSTRAINT_TYPE,TABLE_NAME;
  spool off
  
  spool user_index1rebld.sql
  rem
  rem 重建全部索引
  rem select 'alter index 'index_name' rebuild;' from user_indexes
  rem where table_name = 'GWNEWS';
  select 'alter index 'INDEX_NAME' rebuild tablespace indexes;' from user_indexes;
  spool off
  rem @index1rebld.sql
  
  spool user_sources.sql
  rem
  rem 全部代码,主要是procedure
   column name format a22 ;

   column text format a77;
   break on name;
  select text,name from user_source;
  spool off
  
  rem =============== End of File ==================

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表