怎么利用dblink调用远端DB的存储过程

 我来答
学精勤学中551
2017-04-22 · 超过230用户采纳过TA的回答
知道小有建树答主
回答量:432
采纳率:0%
帮助的人:234万
展开全部
如果参数p_fetiontaskgroup只有一个元素,那么用下面的方法容易解决。

在远程库上,创建一个新的过程:
create procedure WRAP_submitFetiontask(TASK_ID NUMBER,
MOBILE VARCHAR2,
FETIONNO VARCHAR2,
CONTENT VARCHAR2,
USERID NUMBER,
USER_INTERFACE_ID VARCHAR2,
PRODUCT_ID VARCHAR2
) is
v_taskInfo tyfetionTg
begin
初始化v_taskInfo;
v_taskInfo(1).TASK_ID := TASK_ID;
v_taskInfo(1).MOBILE := MOBILE ;

.....
submitFetiontask(v_taskInfo);
END;

本地调用时, 调用 WRAP_submitFetiontask@imdb(.....) 就是了。

多个元素时,比较麻烦,
一个方法是远程建立另一个过程,用于构造TABLE
本地每次调用该过程把一个元素传过去。

另一个方法是不通过collection来传递,而是通过物理表来传递。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式