-- 배치 작업 파라미터 ID 시퀀스 생성
CREATE SEQUENCE IF NOT EXISTS seq_batch_job_param_id START WITH 1 INCREMENT BY 1;

create table tb_batch_job_param
(
    PARAM_ID    varchar(20) comment '파라미터 ID - 파라미터 레코드의 고유 식별자 (시퀀스 기반)'
        primary key,
    JOB_ID      varchar(36)                          not null comment '작업 ID (TB_BATCH_JOB_INFO.JOB_ID) - 연결된 배치 작업',
    PARAM_NM  varchar(100)                         not null comment '파라미터 이름 - 파라미터의 식별자',
    PARAM_VALUE varchar(500)                         null comment '파라미터 값 - 실제 파라미터 데이터',
    PARAM_TYPE  varchar(50)                          not null comment '파라미터 타입 (STRING, NUMBER, DATE, BOOLEAN) - 데이터 타입 정의',
    REG_DTTM    datetime default current_timestamp() not null comment '등록 일시 - 파라미터 등록 시점',
    MDFCN_DTTM  datetime default current_timestamp() not null on update current_timestamp() comment '수정 일시 - 파라미터 수정 시점 (자동 업데이트)',
    constraint tb_batch_job_param_ibfk_1
        foreign key (JOB_ID) references tb_batch_job_info (JOB_ID)
)
    comment '배치 작업 파라미터 저장 테이블 - 배치 작업 실행 시 필요한 파라미터 정보 관리';

create index IDX_BATCH_PARAM_JOB_ID
    on tb_batch_job_param (JOB_ID)
    comment '작업 ID 인덱스 - 특정 작업의 파라미터 조회 성능 향상';

