Variable uses and placement


Posted on 16th Feb 2014 07:03 pm by admin

I'm new to PL/SQL and am trying to learn about variable valid uses/placement (any pointers to any docs is appreciated...)
All of the docs I've looked only mention declaration and assignment not valid placement.

When I use an input parameter to a cursor placement matters . I just don't understand why...

example... using the value "SCOTT" as an input parm to the c10 cursor replaces the "str_in" variable correctly and works...

1 declare
2 cursor c10(str_in IN varchar2) is
3 select username
4 from dba_users where username=str_in ;
5 begin
6 for r_c10 in c10('SCOTT') loop
7 dbms_output.put_line(r_c10.username);
8 end loop;
9* end;
SQL> /
SCOTT

PL/SQL procedure successfully completed.

However, when trying to replace another "word" it won't resolve the reference...

example... attempting to replace the from table_name as an input parm, no go...

1 declare
2 cursor c10(str_in IN varchar2) is
3 select username
4 from str_in where username='SCOTT' ;
5 begin
6 for r_c10 in c10('DBA_USERS') loop
7 dbms_output.put_line(r_c10.username);
8 end loop;
9* end;
SQL> /
from str_in where username='SCOTT' ;
*
ERROR at line 4:
ORA-06550: line 4, column 6:
PL/SQL: ORA-00942: table or view does not exist
ORA-06550: line 3, column 1:
PL/SQL: SQL Statement ignored
ORA-06550: line 7, column 26:
PLS-00364: loop index variable 'R_C10' use is invalid
ORA-06550: line 7, column 5:
PL/SQL: Statement ignored

Why can't it resolve the string ?

Any help is appreciated
dumb newbie...
No comments posted yet

Your Answer:

Login to answer
344 Like 49 Dislike
Previous forums Next forums
Other forums

Why doesn't this work? (SSH2)
This is my script:

Code: <?php
$connection = ssh2_connect('213.251.167.109', 22);

Changing files over
Just thought I'd start with the new forums looking really nice .

Ok basically I've made this

ldap connection
We are using ldap to get user information from the domain controller. It was working before. Recentl

FAGL_FC_TRANSLATION FAS52 New GL ECC 6.0
Hello,

The new program for Translating GL Balances (FAS 52) gives the option to use diffe

Mastering Regular Expressions, Third Edition, is available.
The Third Edition of Mastering Regular Expressions is available.

QuoteThis third edition is 5

Motivational Posters
Hello,

I wonder how can i do them in php. Are there any sample codes that you can show me?

How do I get the row number from from an sql table query
Hi all

I have a table that I query and it returns a number of rows.
mysql_num_rows($query)

Why will this program not run if the variables are not global?
Hey guys I have a kind of perplexing situation that is probably simple, but I can't seem to understa

mail() problem
Hi Guys,

I've set up a contact email form. It sends the information fine, but it sends it to

trouble printing an array....
I'm having some trouble printing out an array forwards. I'm figuring out the high and low of an arra

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash