Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: Why is UGA size so large?

Re: Why is UGA size so large?

From: Noons <wizofoz2k_at_yahoo.com.au>
Date: Wed, 06 Apr 2005 23:10:23 +1000
Message-ID: <4253dfb8$0$13932$5a62ac22@per-qv1-newsreader-01.iinet.net.au>


Marcel D?rr apparently said,on my timestamp of 6/04/2005 1:28 AM:

>>up the space.  The other way used to be to keep an empty table around,
>>same definition, and copy it to the large PL/SQL table.
>>That shrunk the size, or so we were told.
>>

>
> So what I need to do is copy the sparse table to a temporary empty
> one, completely delete the sparse table and then copy the tempory
> table back, therefore making my initial table dense.

Not quite. IIRC (going back a while now, but it's hidden somewhere in the PL/SQL manual) what you have to do is define an empty table. One that you don't ever extend. Then when it comes time to resize to zero the one you work with, you simply assign the empty one to it. As in:
work_table := empty_table;
No indexes. This resets the work table to empty in one go, rather than the more conventional:
for i in work_table.first..work_table.last loop work_table[i].delete;
end loop;

> Now they use two times the same word "freed", when in fact there is
> quite a difference in what is happening if you delete the whole
> collection or only a part of it.

Semantics are the developer's worst enemy...

-- 
Cheers
Nuno Souto
in sunny Sydney, Australia
wizofoz2k_at_yahoo.com.au.nospam
Received on Wed Apr 06 2005 - 08:10:23 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US