Oracle 使用IN OUT参数创建/调用存储过程

前端之家收集整理的这篇文章主要介绍了Oracle 使用IN OUT参数创建/调用存储过程前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

对于IN参数而言,它可以接受一个值,但是不能在过程中修改这个值。而对于OUT参数而言,它调用过程时为空,在过程的执行中将为这参数指定一个值,并在执行结束后返回。而IN OUT 类型的参数同时具有IN参数和OUT参数的特性,在调用过程时既可以向该类型的参数传入值,也可以从该参数接受值;而在过程的执行中既可以读取又写入该类型参数。

#创建SWAP存储过程交换两个数的位置

  1. sql> create or replace procedure swap(
  2. 2 num1_param in out number,3 num2_param in out number) is
  3. 4 var_temp number;
  4. 5 begin
  5. 6 var_temp:=num1_param;
  6. 7 num1_param:=num2_param;
  7. 8 num2_param:=var_temp;
  8. 9 end swap;
  9. 10 /
  10.  
  11. 过程已创建。

#调用SWAP过程完成数据之间的交换

  1. sql> set serveroutput on
  2. sql> declare
  3. 2 var_max number:=23;
  4. 3 var_min number:=45;
  5. 4 begin
  6. 5 if var_max < var_min then
  7. 6 swap (var_max,var_min);
  8. 7 end if;
  9. 8 dbms_output.put_line(var_max || '>' || var_min);
  10. 9 end;
  11. 10 /
  12. 45>23
  13.  
  14. PL/sql 过程已成功完成。

猜你在找的Oracle相关文章