oracle 之存储过程学习笔记
过程:用于执行特定操作的pl/sql块.
过程中的参数有三种模式:in(输入) out(输出) in out(输入输出)
过程的建立:
create or replace procedure proc_name(argumeng1 [mode1] datatype1,argument2 [mode2] datatype2,....)
is/as
---定义变量
begin
---body 注意:select into的用法,不能直接用select语句。
end;
例子:
create or replace procedure proc_ename(eno emp.empno%type)
is
ename emp.ename%type;
begin
select ename into ename from emp where empno = eno;
dbms_output.put_line(ename);
end;
存储过程有两种调用方式:
1、call proc_ename(7788);
在pl/sql中sql/command window或者sql*plus都可以执行。
注意调用无参的存储过程时,需要加上"()"。
2、exec proc_ename(7788);
在pl/sql中sql window中不可执行,在command window或者sql*plus都可以执行。
删除过程:drop procedure proc_name;
查看过程源代码: select * from user_source;
我的异常网推荐解决方案:oracle存储过程,http://www.aiyiweb.com/oracle-develop/177537.html