当前位置:首页 » 存储配置 » oracle存储过程out

oracle存储过程out

发布时间: 2022-04-22 07:44:14

A. oracle存储过程的in out 值传递,这是怎么传递的看不懂啊

p_user_name的IN,表示这个参数是传入参数。

p_out_val的OUT,表示这个是传出参数。也就是JAVA中return的值。

p_inoutval的IN OUT,表示这个既是传入、又是传出参数。也就是说,你可以利用它传入该存储过程,然后接到处理后的这个参数。一个参数搞定了2项功能(传入,传出)

B. Oracle 存储过程中OUT参数的用法

aa

C. oracle存储过程out参数要输入吗

out是输出参数,不需要手动输入
参数 in 是需要手动输入的。

D. 请问ORACLE中 存储过程中的IN 和OUT 是做什么的啊

in 是传入的参数,out是返回的结果

E. oracle存储过程,IN OUT 类型的参数怎么传参数

in out类型参数是过程运行开始会把参数值传入过程,运行结束后会把参数值再传出去。
比如说过程test(v_cs in out number);功能为把带入的参数加1;
v_num:=1;
test(v_num);
dbms_output.put_line(v_num);
将输出2;

F. oracle的存储过程怎么调用有out值参数的存储过程

声明与out参数类型一致的变量,然后与普通的存储过程一样调用它(传参时,out参数的位置传入你声明的那个变量就可以)就行了。

G. oracle存储过程中使用游标作为out类型参数,求救!

1、你定义的【RET_CURSOR_VALUE】是一个光标变量,当他作为参数传入过程【GET_EMPINFOBYDEPNO】时候已经被打开(就是open...for),在主程序中再度打开是没有必要的也是错误的(且光标变量只能用【open...for】的形式打开)。
2、所以把【OPEN
RET_CURSOR_VALUE】这句话删掉,就没有问题了。
*******************************
口说无凭,oracle实施log请参照:
说明:我把empno改成20了(因为表里面没有1的数据),还有把open语句注掉了。
*******************************
[SCOTT@ORA1]
SQL>DECLARE
2
RET_CURSOR_VALUE
PKG_CONST.REF_CURSOR;
3
RET_EMPNO
EMP.EMPNO%TYPE;
4
RET_ENAME
EMP.ENAME%TYPE;
5
BEGIN
6
GET_EMPINFOBYDEPNO(20,
RET_CURSOR_VALUE);
7
--OPEN
RET_CURSOR_VALUE
;--报游标类型有误,未解决!!!
8
LOOP
9
FETCH
RET_CURSOR_VALUE
10
INTO
RET_EMPNO,
RET_ENAME;
11
EXIT
WHEN
RET_CURSOR_VALUE%NOTFOUND;
12
DBMS_OUTPUT.PUT_LINE('empNo
is:'
||
RET_EMPNO
||
',empName
is'
||
13
RET_ENAME);
14
END
LOOP;
15
CLOSE
RET_CURSOR_VALUE;
16
END;
17
/
empNo
is:7369,empName
isSMITH
empNo
is:7566,empName
isJONES
empNo
is:7902,empName
isFORD
---
以上,希望对你有所帮助。

H. oracle 存储过程 out参数

首先,恭喜你猜对了,要去掉参数。
想必这个规定是oralce本身定义好的规则。
仔细推敲一下,我想道理是这样的:
假设规定了传入参数的长度,一旦你传入的实际变量的长度超过定义的长度,那oralce怎么办? 还需要增加校验和提示吧?
这样以来莫不如不超过该类型的长度即可,大家用起来也方便:)

猜想你是和定义变量弄混了。变量的定义是要指定长度的。

I. oracle 过程参数 out的调用问题。

OUT 参数必须传入的, 下面是一个 OUT 与 IN OUT 参数使用的例子。

SQL> CREATE OR REPLACE PROCEDURE HelloWorld2 (
2 p_user_name IN VARCHAR2,
3 p_out_val OUT VARCHAR2,
4 p_inout_val IN OUT VARCHAR2
5 ) AS
6 BEGIN
7 dbms_output.put_line('Hello ' || p_user_name || p_inout_val || '!');
8 p_out_val := 'A';
9 p_inout_val := 'B';
10 END HelloWorld2;
11 /

Procere created.

SQL> DECLARE
2 p_outval VARCHAR2(10);
3 p_inoutval VARCHAR2(10) := '~Hi~';
4 BEGIN
5 HelloWorld2('Edward', p_outval, p_inoutval);
6
7 dbms_output.put_line('p_outval=' || p_outval);
8 dbms_output.put_line('p_inoutval=' || p_inoutval);
9 END;
10 /
Hello Edward~Hi~!
p_outval=A
p_inoutval=B

PL/SQL procere successfully completed.

J. oracle怎么在存储过程里调用out参数的存储过程

在所定义的存储过程中,参数的名字后面加上out即可。
例如:
create or replace procere pr1(id in varchar2, name out varchar2)
is
begin
select table_name into name from table1 where table_id = id;
end pr1;

其中存储过程pr1有两个参数,id是输入参数,只能向该存储过程传入值,用in修饰。name是输出参数,只能返回该存储过程的赋与name的结果,用out修饰。

热点内容
微信清除朋友圈缓存 发布:2024-11-19 10:32:08 浏览:138
3ds编程 发布:2024-11-19 10:31:14 浏览:229
mac如何修改账户密码变成普通用户 发布:2024-11-19 10:23:05 浏览:875
接龙源码 发布:2024-11-19 10:14:48 浏览:33
驱动软件哪个安卓版好 发布:2024-11-19 10:08:28 浏览:703
服务器一键搭建java环境 发布:2024-11-19 10:08:27 浏览:729
布丁少儿编程 发布:2024-11-19 09:57:11 浏览:98
vb数据库数组 发布:2024-11-19 09:23:40 浏览:828
安卓游戏数据保存在哪里找 发布:2024-11-19 09:22:02 浏览:310
解压出来的文件乱码 发布:2024-11-19 09:15:40 浏览:940