You should issue the procedure like this:

exec
dbms_repair.check_object('SCOTT','EMP',null,object_type=>DBMS_REPAIR.TABLE_OBJECT,repair_table_name=>DBMS_REPAIR.REPAIR_TABLE,null,null,null,null,:x);

I put the four nulls because of your bind variable. If
you don't want to know the corrupt_count, you won't
need the four nulls and the last parameter. Remember
that the REPAIR_TABLE has to be created through
dbms_repair.admin_tables before the
dbms_repair.check_object invocation.

Regards.


--- "Tatireddy, Shrinivas (MED, Keane)"
<[EMAIL PROTECTED]> wrote:
> Hi lists,
> 
> I tried execting the dbms_repair with the following
> steps:
> 
> sql> variable x number;
> 
> sql> exec
> dbms_repair.check_object('SCOTT','EMP',:x);
> 
> it is giving the error:
> 
> PLS-00306: wrong number or types of arguments in
> call to 'CHECK_OBJECT'
> 
> can anybody tell me how to execute this procedure.
> 
> Thnx and Regards,
> 
> Srinivas
> 
> 
> +++++++++++++++++++++++++
> 
> Hello
> 
> By using DBMS_REPAIR.CHECK_OBJECT I have found 3
> corrupt datablocks in
> our
> database, all with error: Block Checking: DBA =
> 184607007, Block Type =
> KTB-managed data block
> kdbchk: the amount of space used is not equal to
> block size
>         used=8169 fsc=0 avsp=112 dtl=8120
> 
> My plan now is to fix these data blocks. I have
> never done this before,
> so I
> consulted my Oracle manual and the manual recomends
> the following:
> 
> First run DBMS_REPAIR.CHECK_OBJECT on the object to
> find out if the
> object
> contains any corrupt blocks. Then I run
> DBMS_REPAIR.FIX_CORRUPT_BLOCKS
> to
> mark the block as corrupt. After that run
> DBMS_REPAIR.DUMP_ORPHAN_KEYS
> to
> dump all the index references to these blocks. Then
> run
> DBMS_REPAIR.SKIP_CORRUPT_BLOCKS on the object, and
> after that recreate
> the
> table. 
> 
> By doing this the corrupt blocks are removed from
> the object.
> 
> Now I have some questions about this. (My
> environments is a Oracle 8.1.7
> on
> a Windows 2000 Advanced Server):
> 
> Is this a good way, or is there a better way?
> Can I access the data in the corrupt blocks in
> anyway so I can se whats
> in
> the blocks? I'm afraid that i will loose some data
> by doing it this way.
> 
> Regards Jonas
> -- 
> Please see the official ORACLE-L FAQ:
> http://www.orafaq.com
> -- 
> Author: Jonas A Wetterberg
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- (858) 538-5051  FAX:
> (858) 538-5051
> San Diego, California        -- Public Internet
> access / Mailing Lists
>
--------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an
> E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of
> 'ListGuru') and in
> the message BODY, include a line containing: UNSUB
> ORACLE-L
> (or the name of mailing list you want to be removed
> from).  You may
> also send the HELP command for other information
> (like subscribing).
> -- 
> Please see the official ORACLE-L FAQ:
> http://www.orafaq.com
> -- 
> Author: Tatireddy, Shrinivas (MED, Keane)
>   INET: [EMAIL PROTECTED]
> 
> Fat City Network Services    -- (858) 538-5051  FAX:
> (858) 538-5051
> San Diego, California        -- Public Internet
> access / Mailing Lists
>
--------------------------------------------------------------------
> To REMOVE yourself from this mailing list, send an
> E-Mail message
> to: [EMAIL PROTECTED] (note EXACT spelling of
> 'ListGuru') and in
> the message BODY, include a line containing: UNSUB
> ORACLE-L
> (or the name of mailing list you want to be removed
> from).  You may
> also send the HELP command for other information
> (like subscribing).


=====
ENG. Christian Trassens
Senior DBA
[EMAIL PROTECTED]
[EMAIL PROTECTED]
Phone : +34-699240979
+34-649824704

__________________________________________________
Do You Yahoo!?
Find the one for you at Yahoo! Personals
http://personals.yahoo.com
-- 
Please see the official ORACLE-L FAQ: http://www.orafaq.com
-- 
Author: Christian Trassens
  INET: [EMAIL PROTECTED]

Fat City Network Services    -- (858) 538-5051  FAX: (858) 538-5051
San Diego, California        -- Public Internet access / Mailing Lists
--------------------------------------------------------------------
To REMOVE yourself from this mailing list, send an E-Mail message
to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in
the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from).  You may
also send the HELP command for other information (like subscribing).

Reply via email to