存储过程的参数有三种模式:
in(默认的参数模式,用来接收调用程序的值)
out(用来向调用程序返回值)
in out(用于接收调用程序的值,并向调用程序返回更新的值)
以下用一个小例子为例:
假设有一张用户表user_info,里面有字段userid,username,age,写一个存储过程,根据userid查询用户名
1、创建存储过程:
只有一个默认参数:
create or replace procedure p_test(user_id in number)
-------------------- 声明变量部分
is
user_name userinfo.username%type;
-------------------- 可执行部分
begin
select username into user_name from userinfo where userid = user_id;
dbms_output.put_line('用户名为:'||user_name);
-------------------- 异常部分
exception
when others then
dbms_output.put_line('查询不到该用户');
end;
存储过程中变量后面跟%type(例如user_name userinfo.username%type;)的意思&#x