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: Global temporary tables v pl/sql tables

Re: Global temporary tables v pl/sql tables

From: Richard Foote <richard.foote_at_bigpond.com>
Date: Tue, 9 Jul 2002 14:29:00 +1000
Message-ID: <IxtW8.31036$Hj3.93881@newsfeeds.bigpond.com>


Hi Keld,

I believe you're wrong. Then again, I've been wrong more times than David Bowie has recorded a classic tune so who knows.

A PL/SQL variable exists only for the life of the block it was declared in. Easy way to test. Create a stored procedure with a PL/SQL table. Call it from another PL/SQL code and try to reference the table after the called code has executed. If it works and you don't get a error (identifier does not exist or the such) then I'm wrong. Again.

Cheers

Richard
"Keld Nielsen" <keldnielsen_at_image.dk> wrote in message news:M8iW8.157$s76.32298_at_news010.worldonline.dk...
> Hi Richard,
> Just a small comment (embedded)
>
> "Richard Foote" <richard.foote_at_bigpond.com> wrote
> in message
> news:TsgW8.30694$Hj3.92875_at_newsfeeds.bigpond.com..
> .
> > Hi
> >
> > Just to add to what Robert has said.
> >
> > A GTT is actually quite permanent, it's the data
> within it that's temporary
> > (either at a transaction or session level).
> Therefore you can potentially
> > access data in a GTT through many PL/SQL block
> executions.
> >
> > A PL/SQL table is temporary, period, as it's a
> memory structure that exists
> > only for the life of the PL/SQL block.
>
> if it's created in a package body (or spec) it
> will exist during
> the life of a session - or am I wrong here ?
>
> >
> > Therefore it depends on what you're trying to
> achieve.
> >
> > Horses for courses and that sort of thing.
> >
> > Richard
> >
> >
> >
> >
> > "R Chin" <rchin_at_panix.com> wrote in message
> > news:agc37s$cts$2_at_reader2.panix.com...
> > > They are different objects...
> > > PL/SQL Table = memory structure, like array,
> can't use SQL...
> > > GTT = real db table that's wriiten to disk,
> got rowids.... any DML...you
> > > know what to do
> > > with ordinary table you kno what to do with
> GTT.
> > > All depends on your needs...you use what you
> need to do what you want to
> > do.
> > >
> > > Robert
> > >
> > >
> > > Tony Crispin wrote in message ...
> > > >I am looking for a bit of advice/information:
> > > >
> > > >I need to understand the performance
> implications of using either global
> > > >temporary tables or pl/sql tables for storing
> temporary data generated
> > > >during a session.
> > > >
> > > >
> > > >How are pl/sql tables implemented by Oracle;
> > > >What is the benefit of using one method
> rather than the other;
> > > >When should one method be used rather than
> the other?
> > > >
> > > >Thanks in advance
> > > >Tony
> > > >
> > > >
> > >
> > >
> >
> >
>
>
Received on Mon Jul 08 2002 - 23:29:00 CDT

Original text of this message

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