创建了一个包含有out变量的存储过程,call 这个存储过程。
SQL> l
1 CREATE OR REPLACE PROCEDURE ship_cost_sp
2 (p_qty IN NUMBER,
3 p_ship OUT NUMBER)
4 IS
5 BEGIN
6 IF p_qty > 10 THEN
7 p_ship := 11.00;
8 ELSIF p_qty > 5 THEN
9 p_ship := 8.00;
10 ELSE
11 p_ship := 5.00;
12 END IF;
13* END;
SQL> var L number;
SQL> exec ship_cost_sp(11,:L);
PL/SQL 过程已成功完成。
SQL> set serveroutput on
SQL> exec ship_cost_sp(11,:L);
SQL> declare
2 LL number;
3 begin
4 ship_cost_sp(11,:LL);
5 dbms_output.put_line(LL);
6 end;
7 /
SQL>
declare
LL number:=0; (给变量LL赋上初始值,结果依旧)
begin
ship_cost_sp(11,:LL);
dbms_output.put_line(LL);
end;
/
SQL> l
1 CREATE OR REPLACE PROCEDURE ship_cost_sp
2 (p_qty IN NUMBER,
3 p_ship OUT NUMBER)
4 IS
5 BEGIN
6 IF p_qty > 10 THEN
7 p_ship := 11.00;
8 ELSIF p_qty > 5 THEN
9 p_ship := 8.00;
10 ELSE
11 p_ship := 5.00;
12 END IF;
13* END;
SQL> var L number;
SQL> exec ship_cost_sp(11,:L);
PL/SQL 过程已成功完成。
SQL> set serveroutput on
SQL> exec ship_cost_sp(11,:L);
SQL> declare
2 LL number;
3 begin
4 ship_cost_sp(11,:LL);
5 dbms_output.put_line(LL);
6 end;
7 /
SQL>
declare
LL number:=0; (给变量LL赋上初始值,结果依旧)
begin
ship_cost_sp(11,:LL);
dbms_output.put_line(LL);
end;
/