zoukankan      html  css  js  c++  java
  • 如何通过动态sql远程调用包里面的函数,并返回值

    在分析测试库:edu@analysetest
    ①对要 被调用的包 适当授权给edu@analysetest
    grant all on dbms_flashback to edu;

    edu@edutest


    ②找出可用的db link
      select db_link from dba_db_links;
    ---------------
    DB_LINK
    -----------------
    EDU_FX
    EDU_CLONE
    EDU_XXT
    TEST_YFLORC
    ORA_MYSQLTEST
    EDU_XXTWEB
    EDU_XXTHIS.XXT.CN
    EDU_XXTBAK
    EDU_NMDBC.XXT.CN
    EDU_MYSQL
    EDU_JL

    DB_LINK
    -----------------
    EDU_FX
    EDU_BLOGTEST
    EDU_BLOG
    CJ1
    MMS_XXT
    TEST.XXT.CN
    EDU_CLONE

    已选择18行。

    ③选择可以使用DB Link进行远程和本地执行:
    SQL> select count(*)
      2  from organization@edu_fx;

      COUNT(*)
    ----------
         16509

    ④config@分析测试 edu测试库
      create table o_test(name varchar2(40));
      /
      insert into o_test
      values('涛涛不绝于耳@edu_test')
      
      create table o_test(name varchar2(40));
      /
      insert into o_test
      values('涛涛不绝于耳@analyse_test')
    ⑤测试:
      SQL> select count(*)
      2  from organization@edu_fx;

      COUNT(*)
    ----------
         16509

    SQL> set serveroutput on
    SQL> set feedback off
    SQL> declare
      2    test_name organization.name%type;
      3    test_name1 organization.name%type;
      4  begin
      5    execute immediate
      6    'select o.name from o_test@edu_fx o' into test_name;
      7     dbms_output.put_line('测试名字 of remote:'||test_name);
      8     select o.name into test_name1 from o_test o;
      9     dbms_output.put_line('测试名字 of locald:'||test_name1);
     10  end;
     11  /
    测试名字 of remote:涛涛不绝于耳@analyse_test
    测试名字 of locald:涛涛不绝于耳@edu_test


    ⑥远程Package或Function调用也可以随之实现:
      SQL> declare
      2    r_scn number;
      3  begin
      4   execute immediate
      5   'select dbms_flashback.GET_SYSTEM_CHANGE_NUMBER@edu_fx from dual' into r_scn;
      6   dbms_output.put_line('scn of remote:'||r_scn);
      7  end;
      8  /
    scn of remote:18865075287
    --------------------附记 第一步的授权很重要,囿于时间所限,先写这一点。

    edit on 2010-07-31

  • 相关阅读:
    非洲出现新蓝海,他们抓住机遇将产品加工反向送入国内市场
    npm ERR! code ERR_STREAM_WRITE_AFTER_END
    程序默认不自动重连oracle
    一份超详细的MySQL高性能优化实战总结
    佩奇送福利:Eygle系列书籍免费下载
    解决waiting for target deviceto come online的做法
    Android真机运行闪退问题
    他是如何将小店铺打造成餐饮品牌的?
    用两张图告诉你,为什么你的App会卡顿?
    用两张图告诉你,为什么你的App会卡顿?
  • 原文地址:https://www.cnblogs.com/gracejiang/p/5890459.html
Copyright © 2011-2022 走看看