1、什么是存储过程:
存储过程是数据库服务器端的一段程序,它有两种类型:
一种类似于select查询,用于检索数据,检索到的数据能够以数据集的形式返回给客户
另一种类似于insert 或 delete,它不返回数据,只是执行一个动作。
有的服务器允许同一个存储过程既可以返回数据又可以执行动作
2、什么时候需要用存储过程:
一些任务往往针对大量的记录而进行的,在服务器上执行存储过程,可以改善应用程序的性能:
服务器往往具有强大的计算能力和速度。
避免把大量的数据下载到客户端,减少网络上的传输量
3、存储过程的参数
要执行服务器上的存储过程,往往要传递一些参数。这些参数分为四种类型:
第一种称为输入参数,由客户程序向存储过程传递值。
第二种称为输出参数,由存储过程向客户程序返回结果。
第三种称为输入/输出参数,既可以由客户程序向存储过程传递值,也可以由存储过程向客户程序返回结果。
第四种称为状态参数,由存储过程向客户程序返回错误信息。
要说明的是,并不是所有的服务器都支持上述四种类型的参数
4、oracle 存储过程的基本语法
无返回值的存储过程
create or replace procedure testa(param1 in varchar2,param2 in varchar2)
as
--变量定义--
begin
insert into student.bid(id,name) values(param1,param2);
end testa;
有返回值的存储过程
create or replace procedure testb(param1 in varchar2,param2 out varchar2)
as
--变量定义--
begin
select name into param2 from student where id=param1;
end testb;