一、存储过程
存储过程是一种命名的PL/SQL程序块,保存在数据库中,因为是已经编译好的代码,所以在被调用时,其执行效率非常高。
存储过程的参数种类:
1、in 输入参数(默认)
2、out 输出参数
3、in out 输入输出参数
存储过程的创建和执行
1、创建存储过程
创建存储过程的语句是CREATE PROCEDURE,语法格式:
create [or replace] procedure pro_name [(parameter1[,parameter2]...)] is|as
begin
plsql_sentences;
[exception]
[dowith_sentences;]
end [pro_name];
eg:创建一个存储过程dept_proc并向dept表中插入一条记录(无参存储过程)
create or replace procedure dept_proc is
var_name dept.dname%type;
begin
var_name:='董事局';
insert into dept values(95,var_name,'中国');
commit;
end;
/
创建结果:
结果显示已将创建成功,接下来进行查询,看一下到底是否插入记录了,
select * from dept;
查询结果:
结果显示并没有插入该记录,原因因为我们并没有执行这个存储过程,接下来会介绍存储过程的执行
2、调用存储过程
调用存储过程一般使用EXECUTE语句,但在 PL/SQL块中可以直接使用存储过程的名称来调用。其语法格式如下:
[exec | execute] procedure_name
其中不论使用exec调用还是使用execute调用都是可以的
eg:调用刚才创建的存储过程,并查询
exec dept_proc;
调用结果: