ORACLE 本地数据库存储过程 调用远程数据库存储过程

http://www.4ucode.com/Study/Topic/726884

废话少说,直接切入主题
步骤1:建立一个远程数据库的连接服务名
D:\oracle\ora92\network\admin\tnsnames.ora 添加如下代码:
SDEC =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.254)(PORT = 1521))

    )

    (CONNECT_DATA =

      (SERVICE_NAME = DEC)

    )

  )


步骤2:本地数据库建立一个db link
  CREATE PUBLIC DATABASE LINK doko CONNECT TO gz IDENTIFIED BY GZ USING 'SDEC';


ps:这里的SDEC 就是上面配置的服务名

步骤3:编写远程数据库写个测试的存储过程
create or replace procedure test(a in integer,b out integer) is

begin

  b:=a+1000;

end test;


步骤4:编写本地数据库的存储过程
create or replace procedure test2 is

p integer;

begin

  test@doko(1,p);

  dbms_output.put_line('p='||p); 

end test2;


步骤5:本地测试存储过程
SQL> set serveroutput on

SQL> exec test2;

 

p=1001

 

PL/SQL procedure successfully completed

 

SQL> 



完毕!

你可能感兴趣的:(oracle)