oracle存储过程中怎么理解传入传出参数(in out)

如题传出参数(in)和传入参数(out)分别有什么用怎么样正确理解这两个参数... 如题
传出参数(in) 和传入参数(out) 分别有什么用
怎么样正确理解这两个参数
展开
 我来答
yyllmm12
2008-04-06 · TA获得超过109个赞
知道答主
回答量:127
采纳率:100%
帮助的人:112万
展开全部
Oracle 过程中定义了in|out|in out3中参数模式,每个参数可以选择其一
in 是参数的默认模式,这种模式就是在程序运行的时候已经具有值,在程序体中值不会改变。
举个例子
create or replace procedure update_price(
p_product_id in NUMBER,
p_factor in NUMBER)
AS
.....
你在引用这个过程的时候给参数传入值
exexute update_price(2,2.5);
这是定义的2个参数就得到了值,in模式下值不能变

out模式定义的参数只能在过程体内部赋值,表示该参数可以将某个值传递回调用他的过程
in out 表示高参数可以向该过程中传递值,也可以将某个值传出去
wastelandxf
2008-04-04 · TA获得超过281个赞
知道小有建树答主
回答量:400
采纳率:25%
帮助的人:241万
展开全部
简单的说in参数就是传入但存储过程里面处理的参数
out参数就是返回值的参数。
in参数就像c++语言里函数一般的参数那样
而out函数就像c++里函数的引用类型参数一样
不知道我比喻是否正确,请高手指点
create or replace procedure gettest2(stdname in varchar2,p_cursor in out types.mytype)
as
begin
open p_cursor for select * from test where name=stdname;
end;
例如上面的存储过程
stdname是in参数,传进去供查询语句使用
p_cursor是 out参数,返回查询的结果集
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lmonkey
2021-04-14 · 教育领域创作者
个人认证用户
lmonkey
采纳数:69 获赞数:176

向TA提问 私信TA
展开全部

MySQL教程4 MySQL8运算符、函数、存储过程及新增数据类型 17.之创建带有IN和OUT参数的存储过程 学习猿地

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式