是这样的,我有两张表A,B。A表的字段存放的是存储过程的名称,B表存放的是存储过程所用的参数,以及和A表关联。
现在我要写一个存储过程C。C的逻辑是:从A,B两张表中查出存储过程的名称和参数,去调用存储过程。我要怎么写呢?请高人帮忙。 如:我从A表中查出的存储过程名称是D。从B表中查出D存储过程的参数是E,F。我在C存储过程中要实现,调用D,并且传参E,F。
现在我要写一个存储过程C。C的逻辑是:从A,B两张表中查出存储过程的名称和参数,去调用存储过程。我要怎么写呢?请高人帮忙。 如:我从A表中查出的存储过程名称是D。从B表中查出D存储过程的参数是E,F。我在C存储过程中要实现,调用D,并且传参E,F。
解决方案 »
- SQL优化
- 简单作业贴,达人请进帮忙
- java连接ORACLE时候出现以下异常,本地net服务名配置测试失败
- 请教:ORACLE如何用EXP命令快速导出110G的数据
- PL SQL Developer配置
- 新手再问关于数据比较的问题。这次是VARCHAR2型和date型比较。请进来看看。
- 一个很怪异的问题!
- oracle817 运行一段时间后出现异常,错误号:ORA-01034 、 ORA-27101如何处理?
- 初学者的一大堆问题?
- 有什么工具做SQL SERVER与Oracle之间转换数据,可以直接把sql server的text类型转换成Oracle的CLOB类型
- 请教一个SQL文
- 去除重复数据
begin
select
A.ProcedureNm
from
a
into
outProcedureNm ;
outProcedureNm := 'begin' || outProcedureNm || '(:v1,:v2); end;';
exception
when the others
null;
end; create or replace procedure C is
varE varchar(10) ;
varF varchar(10) ;
varProcedureNm varchar(1000);
begin
select
B.E,B.F
from B
into inVarE ,inVarF;
--call D
D(varProcedureNm);
execute immediate varProcedureNm using in inVarE ,in inVarF;
exception
when the others
null; end;
outProcedureNm := 'begin ' || outProcedureNm || ' (:v1,:v2); end;';
B.E,B.F
from B
into varE ,varF;
--call D
D(varProcedureNm);
execute immediate varProcedureNm using in varE ,in varF;
exception 这个地方要改改
如,“aaa,bbbb,ccc”这个串中的每个都是一个参数。我要如何得到aaa bbb ccc 呢?
这样我就可以调用存储过程,d(aaa,bbb,ccc)了。
replace(string, ',', ''',''')