oracle存储过程的参数类型有:1、输入类型,表示调用者向过程传入值;2、输出类型,表示过程向调用者传出值(可以返回多个值);3、输入输出类型,既表示调用者向过程传入值,又表示过程向调用者传出值。
本教程操作环境:windows7系统、oracle 11g版、dell g3电脑。
oracle 存储过程的参数类型
1、in:输入类型,即由应用程序将数据传入oracle存储过程中,表示调用者向过程传入值;这种参数在存储过程中是只读参数,在存储过程中无法对该类型的参数进行修改;
2、out:输出类型,表示过程向调用者传出值。
3、in out:输入输出类型,兼具以上两种特性,但可读可写;既表示调用者向过程传入值,又表示过程向调用者传出值。
验证输入参数:
由于默认参数是输入类型的,在上图中,对bacount参数赋值,报错。
解决办法:
create or replace package body bawq_proc_jgzx isprocedure 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存储过程的参数类型有哪些的详细内容。