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

Home -> Community -> Usenet -> c.d.o.misc -> Re: Rookie Question

Re: Rookie Question

From: Dirk Tschentscher <dirkTHIS_at_REMOVEvolkswagen.de>
Date: Thu, 10 Jul 2003 15:51:16 +0200
Message-ID: <bejr1c$5cf5@doiweb4.wob.vw.vwg>


Hi Rüdiger

you can do it with "execute immediate"
execute immediate 'SELECT count(*) FROM '||r.tablename into rows; execute immediate 'UPDATE info_tablerows SET rowcount ='|| rows ||

                             'WHERE tablename = '|| r.tablename ;
It's not possible with normal SQL

Rgds

    Dirk
"Ruediger Tams" <ruediger.tams_at_komtel.net> schrieb im Newsbeitrag news:3F0D6CAF.9B59D538_at_komtel.net...
> Hello,
> possibly it is a very simple "rookie" question but:
> This statement don't work. why?
>
> DECLARE
> CURSOR c1 IS
> SELECT a.tablename FROM info_tablerows a;
> rows number;
> BEGIN
> FOR r IN c1 LOOP
> SELECT count(*) INTO rows FROM r.tablename;
> UPDATE info_tablerows SET rowcount = rows WHERE tablename =
> r.tablename;
> END LOOP;
> END;
> /
>
> At "SELECT count(*) INTO rows FROM r.tablename;" the message
> "identifier r.tablename must be declared" appears.
> Isn't it possible to reference my tablename?
>
> Thanks for hints.
>
> regards ruediger
>
Received on Thu Jul 10 2003 - 08:51:16 CDT

Original text of this message

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