首页 >数据库 >Oracle >oracle存储过程的参数类型有哪些

oracle存储过程的参数类型有哪些

青灯夜游
青灯夜游原创
2022-01-25 15:03:036169浏览

oracle存储过程的参数类型有:1、输入类型,表示调用者向过程传入值;2、输出类型,表示过程向调用者传出值(可以返回多个值);3、输入输出类型,既表示调用者向过程传入值,又表示过程向调用者传出值。

oracle存储过程的参数类型有哪些

本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。

oracle 存储过程的参数类型

1、in:输入类型,即由应用程序将数据传入oracle存储过程中,表示调用者向过程传入值;这种参数在存储过程中是只读参数,在存储过程中无法对该类型的参数进行修改;

2、out:输出类型,表示过程向调用者传出值。

3、in out:输入输出类型,兼具以上两种特性,但可读可写;既表示调用者向过程传入值,又表示过程向调用者传出值。

验证输入参数:

由于默认参数是输入类型的,在上图中,对BAcount参数赋值,报错。

解决办法:

CREATE OR REPLACE PACKAGE body BAWQ_PROC_JGZX IS
PROCEDURE PROC_CSJGZX
(
    pproc VARCHAR2,
    BAcount int :=3
)
IS
 i int :=BAcount;  --定义变量,通过变量替代参数
BEGIN
     i:=BAcount;
dbms_output.put_line(i);
  delete CSJGZX;
  while i>0 LOOP
       i := i-1 ;  
           insert into CSJGZX (CSJGZX_PROC,id,bh,mc,data) values(pproc,SYS_GUID(),SYS_GUID(),'济南',cast(DBMS_RANDOM.VALUE(1,200) as int));
       commit;
   end loop;

END PROC_CSJGZX;
END BAWQ_PROC_JGZX;

简单来说 in 是调用存储过程的时候向存储过程传递的消息。out是存储过程向调用者传出的消息。in out 则是两者之间相互通信。

推荐教程:《Oracle教程

以上是oracle存储过程的参数类型有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn