oracle中如何定义一个使用out参数的存储过程
这是一个带out参数的存储过程,但不明白numsOUTINTEGER的用处CREATEORREPLACEPROCEDUREtotal_students(numsOUTIN...
这是一个带out参数的存储过程,但不明白nums OUT INTEGER的用处
CREATE OR REPLACE PROCEDURE total_students(nums OUT INTEGER)
AS
BEGIN
SELECT COUNT(*) INTO nums FROM students;
END; 展开
CREATE OR REPLACE PROCEDURE total_students(nums OUT INTEGER)
AS
BEGIN
SELECT COUNT(*) INTO nums FROM students;
END; 展开
4个回答
展开全部
1、你的过程定义的参数是out也就是出参,要往外传值的,执行完这个过程得到的结果放在出参里传给调用它的地方
SELECT COUNT(*) INTO nums FROM students
得到一个数值 放在 nums里面传出去了
2、存储过程的固定格式:
CREATE OR REPLACE PROCEDURE 过程名(参数名 参数类型(in/out) 数据类型(varchar/number/char...))
AS
声明一些变量...
BEGIN
做一些业务处理(增,删,查,改...)
END;
3、参数的写法:
参数名 in或者out或者inout 数据类型
in的就是需要往里传数据的参数,out的就是过程处理完往外传的数据,inout的就是既往里传也往外传的参数
4、在java里调用过程的时候:
{call 过程名(入参的值,出参的变量,...)}
SELECT COUNT(*) INTO nums FROM students
得到一个数值 放在 nums里面传出去了
2、存储过程的固定格式:
CREATE OR REPLACE PROCEDURE 过程名(参数名 参数类型(in/out) 数据类型(varchar/number/char...))
AS
声明一些变量...
BEGIN
做一些业务处理(增,删,查,改...)
END;
3、参数的写法:
参数名 in或者out或者inout 数据类型
in的就是需要往里传数据的参数,out的就是过程处理完往外传的数据,inout的就是既往里传也往外传的参数
4、在java里调用过程的时候:
{call 过程名(入参的值,出参的变量,...)}
展开全部
在所定义的存储过程中,参数的名字后面加上out即可。
例如:
create or replace procedure 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修饰。
例如:
create or replace procedure 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修饰。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
out的意思就是将执行完后 该变量的值赋给传入时的这个参数.
如你所说
若在外处调用你的过程
declare aaa...
....
total_students(aaa)
.....
如果SELECT COUNT(*) INTO nums FROM students;执行结果为10
则aaa的值就是10.
如你所说
若在外处调用你的过程
declare aaa...
....
total_students(aaa)
.....
如果SELECT COUNT(*) INTO nums FROM students;执行结果为10
则aaa的值就是10.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
MySQL教程4 MySQL8运算符、函数、存储过程及新增数据类型 17.之创建带有IN和OUT参数的存储过程 学习猿地
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询