一、建立测试数据
--建立测试数据:
create table person(编号 number(10),姓名 varchar2(20),密码 varchar2(20));
insert into person values(1,'xzw','888');
select * from person;
查询结果如下:
二、建立存储过程
--建立存储过程:
create or replace procedure query_person(ID IN OUT NUMBER,NAME OUT VARCHAR2,pwd OUT VARCHAR2) is
begin
select 编号, 姓名, 密码 INTO id,NAME,pwd from person where 编号=ID;
end query_person;
在plsql的左侧栏-->Procedures中会显示刚刚建立的存储过程,如果所写的存储过程是错误的,在其上会显示一个红色的叉号:
这里,我们建立的存储过程是正确的。
三、调用存储过程
--调用存储过程:
declare ID number(10);
NAME varchar2(50);
pwd varchar2(20);
begin
ID := 1;
query_person(ID,NAME,pwd); --调用存储过程
dbms_output.put_line('ID is: '||ID);
dbms_output.put_line('name is: '||NAME);
dbms_output.put_line('pwd is: '||pwd);
exception
when others then
dbms_output.put_line(sqlerrm);
end;
调用存储过程后,正常情况下会输出我们想要的信息,如下图所示:
如果发生异常则会打印出sqlerrm的相关信息,如下:
ORA-0000: normal, successful completion