Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> Re: Why can't a variable have the same name as a table ...
Sorry,
You MUST have the parameter name something else. That's the way it works.
Anyway it's just a parameter name, NOT a table name.
I also recommend prefixing parameter with p_. In that case your issue will
disappear automatically,
and you will immediately see where that variable came from.
Hth,
Sybrand Bakker, Oracle DBA
<thalabi_at_my-deja.com> wrote in message news:7phbsm$3t2$1_at_nnrp1.deja.com...
> Hi,
>
> When I create the following procedure;
> ----------------------------------------------------
> create or replace procedure customer_add (
> customer customer.name%type)
> as
> begin
> insert into customer values (customer_add.customer);
> end;
> ----------------------------------------------------
> I get the error;
> PLS-00356: 'CUSTOMER' must name a table to which the user has
> access
>
> The message is kind of bogus because I DO have access to the table
> customer and if I change the variable name from customer to cust the
> procedure compiles ok. I think the problem is having a local variable
> the same as a table name.
>
> What is the work around? I must have the paramter named customer and not
> something else.
>
> Regards
> TH
>
>
> Sent via Deja.com http://www.deja.com/
> Share what you know. Learn what you don't.
>
Received on Thu Aug 19 1999 - 12:27:17 CDT