动态调用存储过程代码实例.doc
文本预览下载声明
这几天公司数据转换中用到了动态调用存储过程,自己做了一个最简单的练习,现看一下代码例子:
代码大概描述:将要调用的包中的存储过程名全部存放在一张表中,循环取出,拼接成动态调用存储过程的调用语句,四个过程分别实现两个数的加、减、乘、除运算。
定义包头:
create or replace package PKG_T_CYP is
-- Author : ADMINISTRATOR
-- Created : 2012-5-22 9:22:16
-- Purpose :
-- Public type declarations
--type TypeName is Datatype;
-- Public constant declarations
--ConstantName constant Datatype := Value;
--定义常量
DEF_OK CONSTANT NUMBER := 1;
DEF_ERR CONSTANT NUMBER := -1;
-- Public variable declarations
--VariableName Datatype;
--定义变量
A NUMBER := 10;
B NUMBER := 11;
-- Public function and procedure declarations
--定义存储过程,两个数相加
PROCEDURE Prc_t_plus(PRM_first IN VARCHAR2,
PRM_second IN VARCHAR2,
PRM_third OUT VARCHAR2,
PRM_APPCODE OUT VARCHAR2,
PRM_ERRORMSG OUT VARCHAR2);
--定义存储过程,两个数相减
PROCEDURE Prc_t_minus(PRM_first IN VARCHAR2,
PRM_second IN VARCHAR2,
PRM_third OUT VARCHAR2,
PRM_APPCODE OUT VARCHAR2,
PRM_ERRORMSG OUT VARCHAR2);
--定义存储过程,两个数相乘
PROCEDURE Prc_t_multiply(PRM_first IN VARCHAR2,
PRM_second IN VARCHAR2,
PRM_third OUT VARCHAR2,
PRM_APPCODE OUT VARCHAR2,
PRM_ERRORMSG OUT VARCHAR2);
--定义存储过程,实现两个数相除
PROCEDURE Prc_t_divide(PRM_first IN VARCHAR2,
PRM_second IN VARCHAR2,
PRM_third OUT VARCHAR2,
PRM_APPCODE OUT VARCHAR2,
PRM_ERRORMSG OUT VARCHAR2);
--此过程进行测试
PROCEDURE Prc_t_callpro(PRM_first IN VARCHAR2,
PRM_second IN VARCHAR2,
PRM_third OUT VARCHAR2,
显示全部