从 PL/SQL 调用另一个 Oracle 数据库中的过程

Posted

技术标签:

【中文标题】从 PL/SQL 调用另一个 Oracle 数据库中的过程【英文标题】:calling a procedure in another Oracle database from PL/SQL 【发布时间】:2013-09-15 12:09:53 【问题描述】:

数据库A中,我编写了一个名为is_document_valid 的PL/SQL 过程。我想从这个过程中调用数据库 B 中的另一个 PL/SQL 过程。像这样的:

procedure is_document_valid( p_url varchar2( 200 ) )
    -- call stored-procedure in another database
    check_document( p_url );
end;

有人知道怎么做吗?

【问题讨论】:

您的意思是“数据库”(如在单独的服务器和实例中)还是“模式”(如在同一 Oracle 安装中的不同用户中)跨度> 前者。完全独立的服务器和实例。 【参考方案1】:

您将调用过程的数据库名称附加到过程名称的末尾:

procedure is_document_valid( p_url varchar2( 200 ) )
    -- call stored-procedure in another database
    check_document@some_other_db( p_url );
end;

【讨论】:

谢谢。这看起来是正确的答案。我想我需要做的就是设置数据库链接,但一旦完成,你的答案就是完美的。

以上是关于从 PL/SQL 调用另一个 Oracle 数据库中的过程的主要内容,如果未能解决你的问题,请参考以下文章

oracle:使用 PL/sql 过程从另一个模式填充表

oracle SQL语句中怎么样调用存储过程

如何从 R 调用存储在 Oracle 数据库中的 PL/SQL 过程

如何使用参数从 Oracle PL/SQL 执行 Java jar 文件?

Oracle PL/SQL - 由其他团队调用的用于插入数据的过程。正在从 Java 调用过程

ORACLE PL/SQL:以最大执行时间调用外部 Oracle PL/SQL 过程