Question:
:
I have a set of SQL statement that are identical except for the
value of a variable.
I would like to make this SQL variable as a parameter and pass it to
the SQL.
What ways does Oracle have to allow passing a parameter to a SQL
query?
Answer:
If you want to learn to do this correctly, with
examples, get the
Easy Oracle Pack, with working code examples in the book
downloads.
Oracle is the most powerful of all databases, and it is easy to pass
a variable into a SQL statement using several methods, including
SQL*Plus and PL/SQL:
SQL*Plus script to pass a variable
You can pass variable as a parameter in SQL*Plus with the PROMPT and
ACCEPT parameters something like this script that accepts
emp_name as a parameter to pass to the SQL:
ACCEPT empame
PROMPT 'Enter Employee Name: '
SELECT * FROM emp WHERE
ename = ‘&empame’;
PL/SQL script to pass a variable
In PL/SQL you can
pass a parameter to a PL/SQL stored procedure or function:
set feedb off
create
or replace directory tmp as '/tmp';
declare
inFile utl_file.file_type;
outFile
utl_file.file_type;
x varchar2(40);
begin
inFile := utl_file.fopen('TMP','in','R');
outFile :=
utl_file.fopen('TMP','out','W');
utl_file.put_line(outFile,'Enter a value for x
: ');
utl_file.fflush(outFile);
utl_file.get_line(inFile,x);
utl_file.put_line(outFile,'you entered '||x);
utl_file.fclose(inFile);
utl_file.fclose(outFile);
end;
/
quit
$
mknod /tmp/out p; mknod /tmp/in p
$ (cat /tmp/out &);(sqlplus -s scott/tiger
@interactiveplsql &
);
cat>/tmp/in
Enter
a value for x :
ABC123
|
|
|
|
Guarantee your Success!
Oracle is the
world's most complex, robust and flexible database, considered
impossible to master without a mentor.
That's why all BC
Oracle trainers are working professionals, experts in Oracle who
share their tips and secrets. |
|
| |
|
Burleson is the American Team

Note:
This Oracle
documentation was created as a support and Oracle training reference for use by our
DBA performance tuning consulting professionals.
Feel free to ask questions on our
Oracle forum.
Verify
experience!
Anyone
considering using the services of an Oracle support expert should
independently investigate their credentials and experience, and not rely on
advertisements and self-proclaimed expertise. All legitimate Oracle experts
publish
their Oracle
qualifications.
Errata?
Oracle technology is changing and we
strive to update our BC Oracle support information. If you find an error
or have a suggestion for improving our content, we would appreciate your
feedback. Just
e-mail:
and include the URL for the page.
Copyright © 1996 - 2012
All rights reserved.
Oracle ©
is the registered trademark of Oracle Corporation.
|
|