1. 存储过程
CREATE OR REPLACE PROCEDURE SP_NAME( PM_NAME [IN/OUT/IN OUT] PM_TYPE...)
{AS}
[说明(变量定义)部分]
BEGIN
可执行部分
[EXCEPTION]
错误处理部分
END [SP_NAME];
·
参数:
in 定义一个输入参数变量。用于传递参数给存储过程 PM_name IN DATA_type DEFAULT default_value;
out 定义一个输出参数变量。用户从存储过程中获取数据 PM_name OUT DATA_type;
in out 定义一个输入输出参数,同时拥有以上2个功能 PM_name IN OUT DATA_type DEFAULT default_value;
2.包
包是用来存储相关程序结构的对象,他存储与数据字典中,包由两个分离的部分组成,包头(Package)和包体(Package body).包头是包的说明部分, 是对外的操作接口,对应用是可见的,包体是包的代码的实验部分,对应用来说是不可见的黑盒。
CREATE [OR REPLACE] PACKAGE PK_NAME
IS
共有变量定义
共有类型定义
共有游标定义
共有异常定义
函数说明
过程说明
END;
创建包体命令如下:
CREATE [OR REPLACE] PACKAGE BODY PK_NAME
IS
私有变量定义
私有类型定义
私有游标定义
私有异常定义
函数定义
过程定义
END;
删除包头:
Drop Package PKNAME
删除包头:
Drop Package body PKNAME