2009-06-29 86 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