存储过程是一组为了完成特定功能的SQL语句,经编译后存储在数据库中。

存储过程的语法:

create or replace procedure (Name in out type, Name in out type, ...) is

begin

业务sql语句

end ;

create or replace procedure是oracle的一个固定格式,作用是让数据库创建一个存储过程,如果有就覆盖它;

(Name in out type, Name in out type, ...) 按格式要求填写后,就是具有参数的存储过程,不填写就是不带带参数的存储过程;

is 是一个关键词,后面跟一个sql语句块

begin关键词,表名一个sql语句块的开始

业务sql语句,这个就是实际要执行的具有业务意义的sql语句

end; 关键词,表名一个sql语句块的结束。

举例:

create or replace procedure P_TEST is

zl VARCHAR2(32);

begin

SELECT count(1) INTO zl FROM tablename;

Dbms_output.Put_line(zl);

end P_TEST;

这个存储过程就是输出表tablename的总数据量。

执行存储过程:

oracle存储过程调用(oracle存储过程超详细使用手册)(1)

执行存储过程的结果:

oracle存储过程调用(oracle存储过程超详细使用手册)(2)