一、存储过程及概述

ORACLE可以把PL/SQL程序存储在数据库,并可以在任何地方进行运行,这样叫做存储过程或函数。过程和函数统称为PL/SQL子程序,被命名为PL/SQL块,均存储在数据库中,并通过输入、输出参数或输入/输出参数与其调用者交换信息。过程和函数的唯一区别是函数总向调用者返回数据,而过程则不返回数据。

1.1、创建存储过程语句

create [or replace]procedure 存储过程名[(参数 in|out|in out 参数数据类型,…)]

is|as

声名部分;

begin

plsql代码块;

exception

异常处理;

end;

1.2、存储过程的调用

1.在plsql块中调用

直接写名字

2.call命令调用

call 存储过程名();

3.execute命令调用

在控制台执行,不打印结果需要运行set serveroutput on;

1.3、删除存储过程

drop procedure 存储过程名;

1.4、存储过程参数的三种模式

IN用于接受调用程序的值。默认的参数模式

OUT用于向调用程序返回值

IN OUT用于接受调用程序的值,并向调用程序返回更新的值

二、函数

2.1、创建函数的语句

create [or replace]function 函数名称[(形式参数 参数类型,…)]

return 返回值类型

is

声名变量;

begin

plsql代码块;

return 返回值;

end;

2.2、访问函数的方式

1.使用SQL语句

select 函数名称 from dual;

2.使用PL/SQL块

declare

v varchar2(30);

begin

v:=f1;

dbms_output.put_line(v);

end;