2009-06-29 84 views

回答

0

如果DBMS_SCHEDULER對您來說不夠用,並且您需要在其他PL/SQL代碼的上下文中運行命令,那麼您需要查看calling External Procedures

3
BEGIN 
    DBMS_SCHEDULER.create_job(
    job_name  => 'SHELL_JOB', 
    repeat_interval => 'FREQ=DAILY; BYHOUR=2', 
    job_type   => 'EXECUTABLE', 
    job_action  => '/u01/app/oracle/admin/tools/shell_job.sh', 
    enabled   => TRUE, 
    comments   => 'Perform stuff' 
); 
END; 
0

我只是想分享一下調用操作系統命令的另一種方法。在這種方法中,設置一個簡單的Web服務接口來調用SQL或PL/SQL的os命令。有關此方法的詳細信息可以在這裏找到:

Run Operating System (OS) Command in Oracle PL/SQL: A Web Service Approach

使用這種方法,一步一步的關於如何調用從SQL SQL * Loader的描述也說明如下:

Run Oracle SQL-Loader from SQL or PL/SQL

請注意,在上述方法中,網絡服務是在Python中定義的。 Python預裝了大多數常見的Linux發行版(包括Oracle Linux),但是如果您在Windows平臺上,那麼您可能需要安裝python 2.7.3

+0

請務必閱讀[自助推廣常見問題] (http://stackoverflow.com/faq#promotion)仔細。另外請注意,每次鏈接到自己的網站/產品時都需要發佈免責聲明。 – j0k 2013-01-20 09:55:06