Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

Table Statistics

Posted on 2001-06-18
10
Medium Priority
?
1,431 Views
Last Modified: 2008-03-17
Table Statistics

I am a newbie to Oracle.

I'm selecting all tables from my schema with owner 'PRASHANT'.
like this
          SELECT
               TABLE_NAME
          FROM
               ALL_TABLES
          WHERE
               owner = 'PRASHANT';

I need a PL/SQL code to process each table..estimate statistics and write statistics report in
another table.

Thanks in advance
0
Comment
Question by:prashant_n_mhatre
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
  • +2
10 Comments
 
LVL 2

Expert Comment

by:stmontgo
ID: 6202960
dba_tab_columns keeps statistics info, is that what you are looking for?

u can use desc dbms_utility.analyze_schema to analyze all objects in a given schema.


SQL> desc dbms_utility.analyze_schema;
PROCEDURE dbms_utility.analyze_schema
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 SCHEMA                         VARCHAR2                IN
 METHOD                         VARCHAR2                IN
 ESTIMATE_ROWS                  NUMBER                  IN     DEFAULT
 ESTIMATE_PERCENT               NUMBER                  IN     DEFAULT
 METHOD_OPT                     VARCHAR2                IN     DEFAULT
0
 
LVL 9

Expert Comment

by:dbalaski
ID: 6204949
Depending upon your version --

While dbms_utility.analyze_schema  is good,   oracle recommends that you use the DBMS_STATS package for collecting statistics -- especially for use with the COST BASED OPTIMIZER  
(init.ora  parameter     optimizer=    set to either  CHOOSE,  FIRST_ROWS,  ALL_ROWS)...

This package will populate the base tables behind  the ALL_TABLES/DBA_TABLES views (and others as well)...     It's speed is much faster than the dbms_utility.analyze_schema  

You can read about it in the Oracle8i Supplied PL/SQL Packages Reference Release 2 (8.1.6)
chapter 56  DBMS_STATS  
as well as a few other manuals..

hope this helps,
dBalaski

0
 
LVL 4

Accepted Solution

by:
dda earned 120 total points
ID: 6204967
Also consider this SQL*Plus (not a PL/SQL) example:

set pagesize 0
set feedback off
spool an.sql
select 'analyze table ' || table_name || ' compute statistics;'
   from
      all_tables
   where
      owner = 'PRASHANT';
spool off
@@an.sql
0
Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

 
LVL 4

Author Comment

by:prashant_n_mhatre
ID: 6206913
I have already figured out a solution. It is exactly similar to what 'dda' has proposed.

'dbms_utility.analyze_schema' doesn't work. It simply gives error.


0
 
LVL 4

Expert Comment

by:dda
ID: 6208239
Hmm.. Would you tell us what eror are you getting?
0
 
LVL 4

Author Comment

by:prashant_n_mhatre
ID: 6238161
sorry for not getting back for a long..

It says
SP2-0734: unknown command beginning "dbms_utili..."
0
 
LVL 4

Expert Comment

by:dda
ID: 6240547
Add 'exec' before 'dbms_utility':

SQL>exec dbms_utility.analyze_schema(....)
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 6360905
Please update this question if more is needed, or award th expert who helped you.  If a point split award is in order, let us know details.

Thank you,
Moondancer
Community Support Moderator @ Experts Exchange
0
 
LVL 4

Author Comment

by:prashant_n_mhatre
ID: 6360988
Please split points like:

dda : 30
stmontgo : 20
dbalaski : 20

Thanks Everybody !!!
0
 
LVL 1

Expert Comment

by:Moondancer
ID: 6361156
Point split transactions have now been completed to award experts as follows.  Please comment in your respective
link below to complete.

dda : 30   Awarded in the primary question
Points for  stmontgo : 20   http://www.experts-exchange.com/jsp/qManageQuestion.jsp?qid=20164785
Points for  dbalaski : 20    http://www.experts-exchange.com/jsp/qManageQuestion.jsp?qid=20164787

Thank you,

Mondancer
Community Support Moderator @ Experts Exchange
0

Featured Post

Free learning courses: Active Directory Deep Dive

Get a firm grasp on your IT environment when you learn Active Directory best practices with Veeam! Watch all, or choose any amount, of this three-part webinar series to improve your skills. From the basics to virtualization and backup, we got you covered.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Note: this article covers simple compression. Oracle introduced in version 11g release 2 a new feature called Advanced Compression which is not covered here. General principle of Oracle compression Oracle compression is a way of reducing the d…
From implementing a password expiration date, to datatype conversions and file export options, these are some useful settings I've found in Jasper Server.
Via a live example show how to connect to RMAN, make basic configuration settings changes and then take a backup of a demo database
This video shows information on the Oracle Data Dictionary, starting with the Oracle documentation, explaining the different types of Data Dictionary views available by group and permissions as well as giving examples on how to retrieve data from th…

715 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question