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

Home -> Community -> Usenet -> c.d.o.tools -> Re: PLS-00302 error

Re: PLS-00302 error

From: Bob Fazio <rfazio_at_home.com.nospam>
Date: 2000/05/04
Message-ID: <msnQ4.171649$Tn4.1269588@news1.rdc2.pa.home.com>#1/1

My guess is that the problem isn't with the declaration of the cnrow variable that you are using with the fetch, but with the table's old and new. Do they both have a column cnrow?

--
Robert Fazio, Oracle DBA
rfazio_at_home.com
remove nospam from reply address
http://24.8.218.197/
"Gennady" <gennadyb_at_halcosoftware.com> wrote in message
news:3911cb41$0$6553_at_fountain.mindlink.net...

> Hello,
> In my PL/SQL code I have a variable of ROWTYPE and I try to access
> the variable component using another variable, but I got an errorr:
> "PLS-00302: component 'CNROW' must be declared".
> The code is:
> declare
> cursor c1 is select * from old;
> old_row old%ROWTYPE;
> cursor c2 is select * from new;
> new_row new%ROWTYPE;
> cursor c3 is select column_name from user_tab_columns where table_name =
> 'OLD';
> cnrow user_tab_columns.column_name%TYPE;
> begin
> dbms_output.enable;
> open c1;
> open c2;
> open c3;
> loop
> fetch c1 into old_row;
> fetch c2 into new_row;
> exit when (c1%notfound or c2%notfound);
> end loop;
> loop
> fetch c3 into cnrow;
> If (old_row.cnrow = new_row.cnrow) then -- error in this line!
> dbms_output.put_line('SAME VALUE');
> else
> dbms_output.put_line('DIFFERENT VALUE');
> end if;
> exit when c3%notfound;
> end loop;
> end;
>
> How can I fix the problem??
> Thanks,
> Gennady
> >
Received on Thu May 04 2000 - 00:00:00 CDT

Original text of this message

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