我有一个调度程序,它运行一个需要输入参数的存储过程。
BEGIN
DBMS_SCHEDULER.DROP_PROGRAM
(program_name => 'MYSCHEMA.EXPORT_SCHEMA_STARTING');
END;
/
BEGIN
SYS.DBMS_SCHEDULER.CREATE_PROGRAM
(
program_name => 'MYSCHEMA.EXPORT_SCHEMA_STARTING'
,program_type => 'STORED_PROCEDURE'
,program_action => 'MYSCHEMA.EXPORT_STATUS'
,number_of_arguments => 0
,enabled => FALSE
,comments => NULL
);
SYS.DBMS_SCHEDULER.ENABLE
(name => 'MYSCHEMA.EXPORT_SCHEMA_STARTING');
END;
/
Run Code Online (Sandbox Code Playgroud)
如何将参数传递给EXPORT_STATUS
过程?
到目前为止,我将其更改为运行 PL/SQL BLOCK 的程序:
BEGIN
SYS.DBMS_SCHEDULER.CREATE_PROGRAM
(
program_name => 'MYSCHEMA.EXPORT_SCHEMA_STARTING'
,program_type => 'PLSQL_BLOCK'
,program_action => 'MYSCHEMA.EXPORT_STATUS(''STARTING''); END;'
,number_of_arguments => 0
,enabled => FALSE
,comments => NULL
);
SYS.DBMS_SCHEDULER.ENABLE
(name => 'MYSCHEMA.EXPORT_SCHEMA_STARTING');
END;
/
Run Code Online (Sandbox Code Playgroud)
它按我的预期工作。但是,如果有人知道如何将其保留为以前的格式,我们将不胜感激。