Базы данных Oracle - статьи

         

Создание программы


Простой пример создания программы:

BEGIN DBMS_SCHEDULER.CREATE_PROGRAM ( program_name => 'simple_program'

, program_type => 'STORED_PROCEDURE' , program_action => 'updatesal' , enabled => TRUE ); END; /

Список сведений об имеющихся программах для планировщика имеется в таблицах DBA/ALL/USER_SCHEDULER_PROGRAMS.

Другими значениями параметра PROGRAM_TYPE могут быть 'PLSQL_BLOCK' и 'EXECUTABLE' (см. выше).

При наличии у процедуры параметров их количество потребуется указать особо:

CREATE PROCEDURE salary ( deer NUMBER ) AS BEGIN UPDATE emp SET sal = sal - deer; END; /

BEGIN DBMS_SCHEDULER.CREATE_PROGRAM ( program_name => 'simple_program1'

, program_type => 'STORED_PROCEDURE' , program_action => 'salary' , enabled => FALSE

, number_of_arguments => 1 ) ; END; /

Обратите внимание, что программа создана «отключенной». Дело в том, что указать фактические значения параметрам программе во «включенном» состоянии нельзя, так что последовательность действий будет следующая:

BEGIN DBMS_SCHEDULER.DEFINE_PROGRAM_ARGUMENT ( program_name => 'simple_program1'

, argument_position => 1 , argument_name => 'DELTA' , argument_type => 'NUMBER' ) ; END; /

EXECUTE DBMS_SCHEDULER.ENABLE ( 'simple_program1' )



Содержание раздела