Procedure/Function: Unterschied zwischen den Versionen

Aus MeinWiki
Wechseln zu: Navigation, Suche
(Statistic aktualisieren)
(Statistic aktualisieren)
Zeile 16: Zeile 16:
 
           fetch c_tablename into v_tablename;
 
           fetch c_tablename into v_tablename;
 
           exit when c_tablename%NOTFOUND;
 
           exit when c_tablename%NOTFOUND;
  begin
+
          begin
  dbms_stats.gather_table_stats(p_schema, v_tablename);
+
            dbms_stats.gather_table_stats(p_schema, v_tablename);
  exception  
+
            exception
  when others then
+
            when others then
      dbms_output.put_line('Error!' || p_schema );
+
            dbms_output.put_line('Error!' || p_schema );
 +
          end;
 +
        end loop;
 +
        close c_tablename;
 
     end;
 
     end;
end loop;
+
     /  
close c_tablename;
 
     end;
 
  /  
 
 
*Procedur zum Erstellen der Statistik für Indexe.
 
*Procedur zum Erstellen der Statistik für Indexe.
 
   create or replace PROCEDURE Call_Statistic_Index
 
   create or replace PROCEDURE Call_Statistic_Index
Zeile 37: Zeile 37:
 
   begin
 
   begin
 
       DBMS_OUTPUT.put_line ('PARAMETER = ' || p_schema);
 
       DBMS_OUTPUT.put_line ('PARAMETER = ' || p_schema);
open c_indexname;
+
      open c_indexname;
loop
+
      loop
  fetch c_indexname into v_indexname;
+
        fetch c_indexname into v_indexname;
  exit when c_indexname%NOTFOUND;
+
        exit when c_indexname%NOTFOUND;
  begin
+
        begin
  dbms_stats.gather_index_stats(p_schema, v_indexname);
+
            dbms_stats.gather_index_stats(p_schema, v_indexname);
  exception  
+
            exception
  when others then
+
            when others then
      dbms_output.put_line('Error!' || p_schema );
+
            dbms_output.put_line('Error!' || p_schema );
    end;
+
        end;
end loop;
+
      end loop;
close c_indexname;
+
      close c_indexname;
    end;
+
  end;
    /
+
  /

Version vom 23. Januar 2015, 08:35 Uhr

Procedure

Statistic aktualisieren

  • Procedur zum Erstellen der Statistik für Tabellen.
   create or replace PROCEDURE Call_Statistic_Table
   (p_schema dba_users.username%type)
   is
   -- Erstellt eine neue Statisitic von Tabellen
   -- KUE
   v_tablename dba_tables.table_name%Type;
   cursor c_tablename is 
      select table_name from dba_tables where owner = p_schema; 
   begin
   DBMS_OUTPUT.put_line ('PARAMETER = ' || p_schema)
       open c_tablename;
       loop
         fetch c_tablename into v_tablename;
         exit when c_tablename%NOTFOUND;
         begin
            dbms_stats.gather_table_stats(p_schema, v_tablename);
            exception
            when others then
            dbms_output.put_line('Error!' || p_schema );
         end;
       end loop;
       close c_tablename;
   end;
   / 
  • Procedur zum Erstellen der Statistik für Indexe.
  create or replace PROCEDURE Call_Statistic_Index
  (p_schema dba_users.username%type)
  is
  -- Erstellt eine neue Statisitic von Index
  -- KUE
  v_indexname dba_indexes.index_name%Type;
  cursor c_indexname is 
      select index_name from dba_indexes where owner = p_schema; 
  begin
     DBMS_OUTPUT.put_line ('PARAMETER = ' || p_schema);
     open c_indexname;
     loop
        fetch c_indexname into v_indexname;
        exit when c_indexname%NOTFOUND;
        begin
           dbms_stats.gather_index_stats(p_schema, v_indexname);
           exception
           when others then
           dbms_output.put_line('Error!' || p_schema );
        end;
     end loop;
     close c_indexname;
  end;
  /