oracle数据库怎么创建存储过程?


存储过程基本语法
create or replace procedure update_emp_sal(
Name in out type, Name in out type, ...
)
isbeginend update_emp_sal;
其他观点:
Oracle存储过程包含三部分:过程声明 。执行过程部分 。存储过程异常 。
Oracle存储过程可以有无参数存储过程和带参数存储过程 。
一、无参程序过程语法
1 create or replace procedure NoParPro
2 as?;
3 begin
4 ?;
5 exception//存储过程异常
6?;
7 end;
8

oracle数据库怎么创建存储过程?

文章插图
二、带参存储过程实例
1 create or replace procedure queryempname(sfindno emp.empno%type) as
2sName emp.ename%type;
3sjob emp.job%type;
4 begin
5....
7 exception
....
14 end;
15
oracle数据库怎么创建存储过程?

文章插图
三、 带参数存储过程含赋值方式
1 create or replace procedure runbyparmeters(isal in emp.sal%type,
sname out varchar,sjob in out varchar)
2as icount number;
3begin
4select count(*) into icount from emp where sal>isal and job=sjob;
5if icount=1 then
6....
9else
10....
12end if;
13exception
14when too_many_rows then
15DBMS_OUTPUT.PUT_LINE('返回值多于1行');
16when others then
17DBMS_OUTPUT.PUT_LINE('在RUNBYPARMETERS过程中出错!');
【oracle数据库怎么创建存储过程?】18end;
19
oracle数据库怎么创建存储过程?

文章插图
四、在Oracle中对存储过程的调用
过程调用方式一
1 declare
2realsal emp.sal%type;
3realname varchar(40);
4realjob varchar(40);
5begin//存储过程调用开始
6realsal:=1100;
7realname:='';
8realjob:='CLERK';
9runbyparmeters(realsal,realname,realjob);--必须按顺序
10DBMS_OUTPUT.PUT_LINE(REALNAME||''||REALJOB);
11END;//过程调用结束
12
过程调用方式二
1 declare
2realsal emp.sal%type;
3realname varchar(40);
4realjob varchar(40);
5 begin//过程调用开始
6realsal:=1100;
7realname:='';
8realjob:='CLERK';
9runbyparmeters(sname=>realname,isal=>realsal,sjob=>realjob);--指定值对应变量顺序可变
10DBMS_OUTPUT.PUT_LINE(REALNAME||''||REALJOB);
11 END;//过程调用结束
请大家多多关注我的头条号 。谢谢大家!

    推荐阅读