> For the complete documentation index, see [llms.txt](https://docs.tibero.com/tmaxopensql/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tibero.com/tmaxopensql/tmax-o2-extensions/reference-guides/package/dbms_scheduler.md).

# DBMS\_SCHEDULER

## 개요

DBMS\_SCHEDULER은 오라클 호환 잡 스케줄링 패키지로, Job, Program, Schedule를 생성하고 관리하는 방법을 제공합니다.

내부적으로 o2scheduler 프레임워크를 사용하므로, 사용 전 o2scheduler의 사전 설정과 활성화가 요구됩니다.

DBMS\_SCHEDULER에서 필요로 하는 추가 객체들은 **dbms\_scheduler** 스키마 내부에 생성되며, 메타 데이터와 실행 이력은 **o2scheduler** 스키마의 메타 테이블을 사용합니다.

<table><thead><tr><th>Name</th><th width="106">Return Type</th><th>Description</th></tr></thead><tbody><tr><td>CREATE_JOB(job_name, job_type, job_action, number_of_arguments, start_date, repeat_interval, end_date, job_class, enabled, auto_drop, comments)</td><td>N/A</td><td>JOB을 생성하고 매개변수를 통해 프로그램 및 스케줄의 세부 정보를 지정하는 프로시저입니다.</td></tr><tr><td>CREATE_JOB(job_name, program_name, schedule_name, job_class, enabled, auto_drop, comments)</td><td>N/A</td><td>이미 생성된 프로시저와 스케줄의 이름으로 작업을 생성하는 프로시저입니다.</td></tr><tr><td>SET_JOB_ARGUMENT_VALUE(job_name, argument_position, argument_value)</td><td>N/A</td><td>위치로 매개 변수의 값을 설정하는 프로시저입니다.</td></tr><tr><td>SET_JOB_ARGUMENT_VALUE(job_name, argument_name, argument_value)</td><td>N/A</td><td>이름으로 매개 변수의 값을 설정하는 프로시저입니다.</td></tr><tr><td>CREATE_SCHEDULE(schedule_name, repeat_interval, start_date, end_date, comments)</td><td>N/A</td><td>스케줄을 생성하는 프로시저입니다.</td></tr><tr><td>CREATE_PROGRAM(program_name, program_type, program_action, nargs, enabled, comments)</td><td>N/A</td><td>프로그램을 생성하는 프로시저입니다.</td></tr><tr><td>DEFINE_PROGRAM_ARGUMENT(program_name, argument_position, argument_type, default_value, argument_name, out_argument)</td><td>N/A</td><td>프로그램 인수의 이름을 정의하는 프로시저입니다.</td></tr><tr><td>DEFINE_PROGRAM_ARGUMENT(program_name, argument_position, argument_type, argument_name, out_argument</td><td>N/A</td><td>프로그램 인수의 이름과 기본 값을 정의하는 프로시저입니다.</td></tr><tr><td>DROP_JOB(job_name, force, defer)</td><td>N/A</td><td>작업을 삭제하는 프로시저입니다.</td></tr><tr><td>DROP_SCHEDULE(schedule_name, force)</td><td>N/A</td><td>스케줄을 삭제하는 프로시저입니다.</td></tr><tr><td>DROP_PROGRAM(program_name, force)</td><td>N/A</td><td>프로그램을 삭제하는 프로시저입니다.</td></tr><tr><td>DROP_PROGRAM_ARGUMENT(program_name, argument_name)</td><td>N/A</td><td>프로그램 인수를 제게하는 프로시저입니다.</td></tr><tr><td>RUN_JOB(job_name, use_current_session)</td><td>N/A</td><td>작업을 즉시 실행하는 프로시저입니다.</td></tr><tr><td>ENABLE(name, commit_semantic)</td><td>N/A</td><td>작업 또는 프로그램을 활성화하는 프로시저입니다.</td></tr><tr><td>DISABLE(name, force, commit_semantic)</td><td>N/A</td><td>작업 또는 프로그램을 비활성화하는 프로시저입니다.</td></tr><tr><td>EVALUATE_CALENDAR_STRING(expr, start_date, return_date_after, result)</td><td>N/A</td><td>calendar_string을 평가하고 다음 시간을 알려주는 프로시저입니다.</td></tr></tbody></table>

***

## 구성

본 절에서는 DBMS\_SCHEDULER 패키지에서 제공하는 프로시저와 함수를 알파벳 순으로 설명합니다.

### CREATE\_JOB

CREATE\_JOB 프로시저는 JOB을 생성하고 매개변수를 통해 프로그램 및 스케줄의 세부 정보를 지정하는 프로시저입니다.

#### 프로토타입

```
CREATE_JOB(
             IN job_name TEXT, 
             IN job_type TEXT, 
             IN job_action TEXT, 
             IN number_of_arguments INTEGER DEFAULT 0, 
             IN start_date TIMESTAMPTZ DEFAULT NULL, 
             IN repeat_interval TEXT DEFAULT NULL, 
             IN end_date TIMESTAMPTZ DEFAULT NULL, 
             IN job_class TEXT DEFAULT 'DEFAULT_JOB_CLASS', 
             IN enabled BOOLEAN DEFAULT FALSE, 
             IN auto_drop BOOLEAN DEFAULT TRUE, 
             IN comments TEXT DEFAULT NULL
           )
           
CREATE_JOB(
              IN job_name TEXT,
              IN program_name TEXT,
              IN schedule_name TEXT,
              IN job_class TEXT DEFAULT 'DEFAULT_JOB_CLASS',
              IN enabled BOOLEAN DEFAULT FALSE,
              IN auto_drop BOBOLEAN DEFAULT TRUE,
              IN comments TEXT DEFAULT NULL
          )
```

#### 파라미터

<table><thead><tr><th width="232">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>job_name</td><td>JOB의 이름입니다.</td></tr><tr><td>job_type</td><td>JOB의 타입입니다.<br>현재 PLSQL_BLOCK과 STORED_PROCEDURE만 지원합니다.</td></tr><tr><td>job_action</td><td><ul><li><p>JOB_TYPE이 PLSQL_BLOCK인 경우, JOB_ACTION은 JOB이 수행될 때 호출되는 PL/SQL 블럭의 내용입니다.</p><ul><li>JOB_ACTION은 <code>DO $$ ... $$;</code> 형태여야 합니다.</li></ul></li><li>JOB_TYPE이 STORED_PROCEDURE인 경우, JOB_ACTION은 프로시저의 이름입니다.</li></ul></td></tr><tr><td>number_of_arguments</td><td>작업에서 인수 개수를 지정하는 정수 값이다. 기본 값은 0입니다.</td></tr><tr><td>start_date</td><td><p>작업이 처음 실행될 시간입니다.<br>기본 값은 NULL입니다.</p><p>start_date가 지정되지 않은 경우, 작업이 활성화되면 즉시 실행되도록 스케줄링됩니다.</p></td></tr><tr><td>repeat_interval</td><td><p>작업이 얼마나 반복되는지 지정하는 값입니다. repeat_interval을 지정하지 않으면 작업은 한 번만 실행됩니다.</p><p>기본 값은 NULL입니다.</p></td></tr><tr><td>end_date</td><td><p>작업이 더 이상 실행되지 않는 시간입니다.</p><p>날짜를 지정하는 경우 end_date는 start_date 이후여야 합니다.</p><p>end_date를 지정하지 않고 repeat_interval을 지정한 경우 작업이 비활성화될 때까지 작업이 무한정 반복됩니다.</p></td></tr><tr><td>job_class</td><td>Oracle과의 호환성을 위해 존재하는 인수입니다.</td></tr><tr><td>enabled</td><td>작업의 활성화 여부입니다.</td></tr><tr><td>auto_drop</td><td>작업이 더 이상 수행될 수 없는 경우 삭제됩니다.</td></tr><tr><td>comments</td><td>작업에 대한 설명입니다.</td></tr></tbody></table>

#### 주의사항

CREATE\_JOB(job\_name, job\_type, job\_action, number\_of\_arguments, start\_date, repeat\_interval, end\_date, job\_class, enabled, auto\_drop, comments) 은 인자가 없는 프로시저에 대해서만 지원합니다.

따라서 **number\_of\_arguments** 파라미터에 0 이외의 값을 부여할 시 에러가 발생합니다.

#### 예제

```
CALL dbms_scheduler.create_job(job_name => 'job1',
                               job_type => 'plsql_block',
                               job_action => 'DO $test$ BEGIN SELECT * FROM nonexistent_table; END; $test$;',
                               number_of_arguments => 0,
                               start_date => now(),
                               repeat_interval => 'FREQ=DAILY',
                               end_date => now() + interval '10 days',
                               enabled => true,
                               auto_drop => true);
                               
CALL dbms_scheduler.create_job(job_name => 'job2',
                               program_name => 'program1',
                               schedule_name => 'schedule1',
                               enabled => true,
                               auto_drop => true);
```

### CREATE\_PROGRAM

CREATE\_PROGRAM 프로시저는 DBMS\_SCHEDULER의 프로그램을 생성하는 프로시저입니다.

#### 프로토타입

```
CREATE_PROGRAM(
                IN program_name TEXT,
                IN program_type TEXT,
                IN program_action TEXT,
                IN nargs INTEGER DEFAULT 0,
                IN enabled IN BOOLEAN DEFAULT FALSE,
                IN comments In TEXT DEFAULT NULL
              )
```

#### 파라미터

<table><thead><tr><th width="196">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>program_name</td><td>프로그램의 이름입니다.</td></tr><tr><td>program_type</td><td><p>프로그램의 타입입니다.</p><ul><li>PLSQL_BLOCK</li><li>STORED_PROCEDURE</li></ul></td></tr><tr><td>program_action</td><td><p>프로그램의 동작입니다.</p><ul><li><p>program_type이 PLSQL_BLOCK인 경우, program_action은 프로그램이 호출될 때 실행될 블럭을 포함합니다.</p><ul><li>PROGRAM_ACTION은 <code>DO $$ ... $$;</code> 형태여야 합니다.</li></ul></li><li>program_type이 STORED_PROCEDURE인 경우, 프로시저의 이름입니다.</li></ul></td></tr><tr><td>nargs</td><td>프로그램이 받는 인수의 개수입니다.</td></tr><tr><td>enabled</td><td>프로그램의 활성화 여부입니다.</td></tr><tr><td>comments</td><td>프로그램에 대한 설명입니다.</td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.CREATE_PROGRAM('program1', 'STORED_PROCEDURE', 'procedure1', 0, true, NULL);

CALL dbms_scheduler.CREATE_PROGRAM(
                                   program_name => 'program1',
                                   program_type => 'stored_procedure',
                                   program_action => 'procedure1',
                                   nargs => 0,
                                   enabled => true,
                                   comments => NULL
                                   );                                                 
```

### CREATE\_SCHEDULE

CREATE\_SCHEDULE 프로시저는 잡 스케줄을 만드는 프로시저입니다.

#### 프로토타입

```
CREATE_SCHEDULE(
                  IN schedule_name TEXT,
                  IN repeat_interval TEXT,
                  IN start_date TIMESTAMPTZ DEFAULT NULL,
                  IN end_date TIMESTAMPTZ DEFAULT NULL,
                  IN comments TEXT DEFAULT NULL
               )
```

#### 파라미터

<table><thead><tr><th width="191">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>schedule_name</td><td>스케줄의 이름입니다.</td></tr><tr><td>repeat_interval</td><td>Job을 얼마나 반복할지에 대한 주기입니다.<br>생략 시 한 번만 수행됩니다.</td></tr><tr><td>start_date</td><td><p>스케줄이 실행될 수 있는 날짜와 시간입니다.</p><p>NULL일 경우 현재 시간이 들어갑니다.</p></td></tr><tr><td>end_date</td><td><p>스케줄이 더 이상 실행되지 않는 시간입니다.</p><p>end_date는 start_date보다 이후여야 합니다.</p></td></tr><tr><td>comments</td><td>스케줄에 대한 설명입니다.</td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.CREATE_SCHEDULE('schedule1', 'FREQ=DAILY', now(), now()+'10 days'::interval, NULL);
```

### DEFINE\_PROGRAM\_ARGUMENT

DEFINE\_PROGRAM\_ARGUMENT 프로시저는 프로그램 인자를 정의하는 프로시저입니다.

#### 프로토타입

```
DEFINE_PROGRAM_ARGUMENT(
                          IN program_name TEXT,
                          IN argument_position INTEGER,
                          IN argument_type TEXT,
                          IN default_value TEXT,
                          IN argument_name TEXT DEFAULT NULL,
                          IN out_argument BOOLEAN DEFAULT FALSE
                       )
                       
DEFINE_PROGRAM_ARGUMENT(
                          IN program_name TEXT,
                          IN argument_position INTEGER,
                          IN argument_type TEXT,
                          IN argument_name TEXT DEFAULT NULL,
                          IN out_argument BOOLEAN DEFAULT FALSE
                       )
```

#### 파라미터

<table><thead><tr><th width="200">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>program_name</td><td>프로그램의 이름입니다.</td></tr><tr><td>argument_position</td><td>인수가 프로그램에 전달될 때의 인수 위치입니다.</td></tr><tr><td>argument_type</td><td>인수의 데이터 타입입니다.</td></tr><tr><td>default_value</td><td><p>인수에 전달될 기본 값입니다.</p><p>JOB이 실행될 때 값을 지정된 상태라면 덮어씌워집니다.</p></td></tr><tr><td>argument_name</td><td>인수의 이름입니다.</td></tr><tr><td>out_argument</td><td>현재는 사용되지 않습니다. 값이 들어온다면 무조건 FALSE여야 합니다.</td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.DEFINE_PROGRAM_ARGUMENT(
                                              'program_1args', 
                                              1, 
                                              'text', 
                                              'default_value', 
                                              'arg1', false
                                            );
                                            
CALL dbms_scheduler.DEFINE_PROGRAM_ARGUMENT(
                                              'program2',
                                              2,
                                              'integer',
                                              'arg2',
                                              false
                                            );
```

### DISABLE

DISABLE 프로시저는 프로그램이나 작업을 비활성화하는 프로시저입니다.

#### 프로토타입

```
DISABLE(
          IN name TEXT,
          IN force BOOLEAN DEFAULT FALSE,
          IN commit_syntax TEXT DEFAULT 'STOP_ON_FIRST_ERROR'
       )
```

#### 파라미터

<table><thead><tr><th width="189">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>name</td><td>프로그램이나 작업의 이름입니다.</td></tr><tr><td>force</td><td><p>의존성이 걸렸더라도 강제로 disable합니다.</p><ul><li>오라클과의 호환성을 위해 존재하며, 현재는 지원하고 있지 않습니다.</li></ul></td></tr><tr><td>commit_syntax</td><td><p>프로그램이나 작업을 비활성화하는 동안 발생하는 에러의 처리 방식입니다.</p><ul><li>STOP_ON_FIRST_ERROR : 에러 발생 시 즉시 종료(현재 이것만 지원합니다)</li></ul></td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.DISABLE('program1', false, STOP_ON_FIRST_ERROR');
```

### DROP\_JOB

DROP\_JOB 프로시저는 작업을 삭제하고, 해당 작업에 속한 모든 인수를 삭제하며, 향후 수행될 작업을 삭제하는 프로시저입니다.

#### 프로토타입

```
DROP_JOB(
          IN job_name TEXT,
          IN force BOOLEAN DEFAULT FALSE,
          IN defer BOOLEAN DEFAULT FALSE,
          IN commit_semantics TEXT DEFAULT 'STOP_ON_FIRST_ERROR'
        )
```

#### 파라미터

<table><thead><tr><th width="199">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>job_name</td><td>작업의 이름입니다.</td></tr><tr><td>force</td><td>force가 True이면, 실행 중인 작업을 종료하고 작업을 삭제합니다.</td></tr><tr><td>defer</td><td>defer이 True이면, 실행 중인 작업이 종료되고 해당 작업을 삭제합니다.</td></tr><tr><td>commit_semantics</td><td><p>작업을 삭제하는 동안 발생하는 에러의 처리 방식입니다.</p><ul><li>STOP_ON_FIRST_ERROR : 에러 발생 시 즉시 종료(현재 이것만 지원합니다)</li></ul></td></tr></tbody></table>

* force와 defer는 동시에 true일 수는 없습니다.

#### 예제

```
CALL dbms_scheduler.DROP_JOB('job1', true, false, 'STOP_ON_FIRST_ERROR');
```

### DROP\_PROGRAM

DROP\_PROGRAM 프로시저는 프로그램을 삭제하는 프로시입니다.

#### 프로토타입

```
DROP_PROGRAM(
              IN program_name TEXT,
              IN force BOOLEAN DEFAULT FALSE
            )
```

#### 파라미터

<table><thead><tr><th width="189">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>program_name</td><td>프로그램의 이름입니다.</td></tr><tr><td>force</td><td>프로그램을 삭제하기 전에 참조하는 작업의 비활성화 여부입니다.</td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.DROP_PROGRAM('drop_program', true);
```

### DROP\_PROGRAM\_ARGUMENT

DROP\_PROGRAM\_ARGUMENT는 프로그램 인수를 삭제하는 프로시저입니다.

#### 프로토타입

```
DROP_PROGRAM_ARGUMENT(
                        IN program_name TEXT,
                        IN argument_position TEXT
                      )
                      
DROP_PROGRAM_ARGUMENT(
                        IN program_name TEXT,
                        IN argument_name TEXT
                     )
```

#### 파라미터

<table><thead><tr><th width="200">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>program_name</td><td>프로그램의 이름입니다.</td></tr><tr><td>argument_position</td><td>인수의 위치입니다.</td></tr><tr><td>argument_name</td><td>인수의 이름입니다.</td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.DROP_PROGRAM_ARGUMENT('program1', 1);

CALL dbms_scheduler.DROP_PROGRAM_ARGUMENT('program1', 'old');
```

### DROP\_SCHEDULE

DROP\_SCHEDULE 프로시저는 스케줄을 삭제하는 프로시저입니다.

#### 프로토타입

```
DROP_SCHEDULE(
               IN schedule_name TEXT,
               IN force BOOLEAN DEFAULT FALSE
             )
```

#### 파라미터

<table><thead><tr><th width="175">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>schedule_name</td><td>스케줄의 이름입니다.</td></tr><tr><td>force</td><td><p>force가 false일 때 참조하는 작업이 있다면 에러를 냅니다.</p><p>force가 true일 경우에는 작업이 비활성화되고 스케줄이 삭제됩니다.</p></td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.DROP_SCHEDULE('schedule1', true);
```

### ENABLE

ENABLE 프로시저는 프로그램이나 작업을 활성화하는 프로시저입니다.

#### 프로토타입

```
ENABLE(
        IN name TEXT,
        IN commit_semantics TEXT DEFAULT 'STOP_ON_FIRST_ERROR'
      )
```

#### 파라미터

<table><thead><tr><th width="194">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>name</td><td>프로그램이나 작업의 이름입니다.</td></tr><tr><td>commit_semantics</td><td><p>프로그램이나 작업을 활성화하는 동안 발생하는 에러의 처리 방식입니다.</p><ul><li>STOP_ON_FIRST_ERROR : 에러 발생 시 즉시 종료(현재 이것만 지원합니다)</li></ul></td></tr></tbody></table>

#### 예제

```
CALL dbms_scheduler.ENABLE('program1');
```

### EVALUATE\_CALENDAR\_STRING

EVALUATE\_CALENDAR\_STRING 프로시저는 표현식을 평가하여 작업의 다음 실행 날짜와 시간을 얻는 프로시저입니다.

#### 프로토타입

```
EVALUATE_CALENDAR_STRING(
                          IN expr TEXT,
                          IN start_date TIMESTAMPTZ,
                          IN return_date_after TIMESTAMPTZ,
                          OUT next_run_date TIMESTAMPTZ
                        )
```

#### 파라미터

<table><thead><tr><th width="182">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>expr</td><td>평가될 달력 표현식입니다.</td></tr><tr><td>start_date</td><td>달력 표현식이 유효해지는 날짜와 시간입니다.</td></tr><tr><td>return_date_after</td><td><p>스케줄러가 start_date와 달력 문자열에 의해 결정된 모든 가능한 일치 항목 중 어떤 것을 반환할지 결정하는데 도움을 줍니다.</p><p>NULL이 들어올 경우 systimestamp으로 채워집니다.</p></td></tr><tr><td>result</td><td>return_date_after 인수로 전달될 값 이후에 발생하는 달력 문자열 및 start_date에 부합하는 첫 번째 시간입니다.</td></tr></tbody></table>

#### 예제

```
DO $$
DECLARE
  result TIMESTAMP WITH TIME ZONE;
BEGIN

  CALL DBMS_SCHEDULER.EVALUATE_CALENDAR_STRING
  (
    'FREQ=DAILY;BYDAY=MON,TUE,WED,THU,FRI;BYHOUR=17;',
    '15-JUN-2013', NULL, result
  );

   CALL DBMS_OUTPUT.PUT_LINE('next_run_date: ' || result);
END;
$$;

DO $$
DECLARE
 result TIMESTAMP WITH TIME ZONE;
BEGIN
  CALL dbms_scheduler.evaluate_calendar_string(
    expr              => 'FREQ=YEARLY;BYMONTH=1;BYMONTHDAY=29',
    start_date        => TIMESTAMPTZ '2024-01-01 00:00:00+09',
    return_date_after => TIMESTAMPTZ '2024-12-31 23:59:59+09',
    result            => result
  );
  raise notice 'date: %', result;
END;
$$;
```

### RUN\_JOB

RUN\_JOB 프로시저는 작업을 즉시 실행하는 프로시저입니다.

#### 프로토타입

```
RUN_JOB(
          IN job_name TEXT,
          IN use_current_session BOOLEAN DEFAULT TRUE
        )
```

#### 파라미터

<table><thead><tr><th width="236">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>job_name</td><td>실행할 잡의 이름입니다.</td></tr><tr><td>use_current_session</td><td>호환성을 위해 존재하는 인수입니다. 기본값은 TRUE입니다.</td></tr></tbody></table>

#### 예제

```
DBMS_SCHEDULER.RUN_JOB('job1', TRUE);
```

### SET\_JOB\_ARGUMENT\_VALUE

SET\_JOB\_ARGUMENT\_VALUE 프로시저는 인수에 대한 값을 지정하는 프로시저입니다.

#### 프로토타입

```
SET_JOB_ARGUMENT_VALUE(
                        IN job_name TEXT,
                        IN argument_position INTEGER,
                        IN argument_value TEXT
                      )
                      
SET_JOB_ARGUMENT_VALUE(
                        IN job_name TEXT,
                        IN argument_name TEXT,
                        IN argument_value TEXT
                      )
```

#### 파라미터

<table><thead><tr><th width="269">파라미터</th><th>설명</th></tr></thead><tbody><tr><td>job_name</td><td>변경할 인수가 속한 작업의 이름입니다.</td></tr><tr><td>argument_position</td><td>값을 설정할 인수의 위치입니다.</td></tr><tr><td>argument_name</td><td>값을 설정할 인수의 이름입니다.</td></tr><tr><td>argument_value</td><td>인수의 새로운 값입니다.</td></tr></tbody></table>

#### 주의사항

CREATE\_JOB(job\_name, job\_type, job\_action, number\_of\_arguments, start\_date, repeat\_interval, end\_date, job\_class, enabled, auto\_drop, comments) 으로 생성한 JOB에 대해서는 현재 지원하고 있지 않습니다.

#### 예제

```
CALL dbms_scheduler.SET_JOB_ARGUMENT_VALUE('job1', 1, '30');

CALL dbms_scheduler.SET_JOB_ARGUMENT_VALUE('job1', 'arg1', 'SMITH');
```

###


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tibero.com/tmaxopensql/tmax-o2-extensions/reference-guides/package/dbms_scheduler.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
