您的位置:首页 > 其它

使用db link执行存储过程

2013-10-08 16:23 99 查看

使用db link执行存储过程

上一篇 /

下一篇 2006-06-20 00:00:00 / 个人分类:工作技术

查看( 627 ) /

评论( 2 ) /
评分( 5 /
0 )

众所周知,使用db link通常用来在本机检索远程数据库的表里的数据。那么是否可以使用db link来执行远程数据库里的存储过程呢?

我做了个测试,是完全可以的。

SQL> connect xxx/xxx @xxx

Connected to Oracle9i Enterprise Edition Release 9.2.0.7.0

Connected as XXX

SQL> drop procedure p_hsj_test_new;

Procedure dropped

SQL>

SQL> CREATE OR REPLACE PROCEDURE P_HSJ_TEST_NEW

2 (as_in in varchar2,

3 ai_rtd out number,

4 as_rmsg out varchar2)

5 IS

6 BEGIN

7 as_rmsg := 'return ' || as_in;

8 END;

9 /

Procedure created

SQL> connect xxx/xxx @xxx

Connected to Oracle9i Enterprise Edition Release 9.2.0.7.0

Connected as XXX

SQL> set serveroutput on;

SQL>

SQL> declare

2 li_rtd number;

3 ls_rmsg varchar2(200);

4 begin

5 p_hsj_test_new @his_database.us.oracle.com('hello',li_rtd,ls_rmsg);

6 dbms_output.put_line(ls_rmsg);

7 end;

8 /

return hello

PL/SQL procedure successfully completed

SQL>

对于函数来说,也是一样的。调用方法类似如下:

select function_name @db_link_name(inpar1,inparm2...) into var from dual;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐