如何从PLSQL程序调用shell脚本

时间:2010-11-01 12:24:30

标签: oracle plsql shell

请告诉我如何从PLSQL程序调用shell脚本?

4 个答案:

答案 0 :(得分:7)

您有几种选择:

  1. 从PL / SQL包装器中调用Java方法。
  2. 从PL / SQL中调用C程序作为外部过程。
  3. 使用新的DBMS_SCHEDULER包。
  4. Here's与INFO建立链接。

答案 1 :(得分:3)

第四种方式(在巴勃罗之上)dbms_pipe


http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:16212348050

  

在Oracle7.0及以上版本中,我们可以使用   dbms_pipes与正在运行的守护进程通信   在数据库之外。这里有一个   使用sqlplus的简单示例   守护进程:

create or replace procedure host( cmd in varchar2 )
as
    status number;
begin
    dbms_pipe.pack_message( cmd );
    status := dbms_pipe.send_message( 'HOST_PIPE' );
    if ( status <> 0 ) then raise_application_error( -20001, 'Pipe error' );
    end if;
end;
/

答案 2 :(得分:2)

使用DBMS_SCHEDULER从PL / SQL调用shell脚本: 请在下面找到链接
http://www.dba-oracle.com/t_execute_shell_script_plsql_procedure.htm

答案 3 :(得分:1)

未在上面列出,但仍然适用:来自PL / SQL {C}的C代码直接库from Ask Tom。显然,执行C包装器来调用Shell脚本。