如何读取 pl/sql 过程中的值?
How read a value in pl/sql procedure?
我在 扫描 pl/sql 过程中的值时遇到问题。 当我执行该过程时,它忽略了 a: ='&a';.
程序正文
create or replace PROCEDURE Testing
IS
a VARCHAR2(3);
BEGIN
DBMS_OUTPUT.PUT_LINE('Enter a : ');
a:='&a';
END Testing;
过程调用
SET SERVEROUTPUT ON;
cl scr;
Execute Testing;
输出
PL/SQL procedure successfully completed.
Enter a :
有人能帮帮我吗?
在 SQL*Plus 我们有提示和接受语法,但是没有直接的方法让 PL/SQL 交互而不使用 PHP、Apex、Java , 脚本。我正在给你编写脚本的例子。
例如在 Windows 批处理中,以下代码会有所帮助。
1) 测试程序的代码与您拥有的相同
create or replace PROCEDURE Testing (arg varchar2)
IS
a VARCHAR2(3);
BEGIN
a:=arg;
DBMS_OUTPUT.PUT_LINE('Value of a : '||a);
END
2) test.bat
sqlplus nd211/nd211 @Testing.sql te1
sqlplus nd211/nd211 @Testing.sql te4
3) Testing.sql
set serveroutput on
exec Testing('&1');
exit;
测试;
/
4) 示例输出
Value of a : te1
PL/SQL procedure successfully completed.
Value of a : te4
PL/SQL procedure successfully completed.
我在 扫描 pl/sql 过程中的值时遇到问题。 当我执行该过程时,它忽略了 a: ='&a';.
程序正文
create or replace PROCEDURE Testing
IS
a VARCHAR2(3);
BEGIN
DBMS_OUTPUT.PUT_LINE('Enter a : ');
a:='&a';
END Testing;
过程调用
SET SERVEROUTPUT ON;
cl scr;
Execute Testing;
输出
PL/SQL procedure successfully completed.
Enter a :
有人能帮帮我吗?
在 SQL*Plus 我们有提示和接受语法,但是没有直接的方法让 PL/SQL 交互而不使用 PHP、Apex、Java , 脚本。我正在给你编写脚本的例子。
例如在 Windows 批处理中,以下代码会有所帮助。
1) 测试程序的代码与您拥有的相同
create or replace PROCEDURE Testing (arg varchar2)
IS
a VARCHAR2(3);
BEGIN
a:=arg;
DBMS_OUTPUT.PUT_LINE('Value of a : '||a);
END
2) test.bat
sqlplus nd211/nd211 @Testing.sql te1
sqlplus nd211/nd211 @Testing.sql te4
3) Testing.sql
set serveroutput on
exec Testing('&1');
exit;
测试; /
4) 示例输出
Value of a : te1
PL/SQL procedure successfully completed.
Value of a : te4
PL/SQL procedure successfully completed.