값을 Db2 변수로 설정

Optim™ High Performance Unload 는 주어진 실행에 대해 Db2® 변수의 값을 동적으로 설정한 다음 다양한 작업을 처리하는 동안 이 값을 사용할 수 있는 기능이 있습니다 Optim High Performance Unload 작업을 처리하는 동안 이 값을 사용할 수 있습니다.

이를 수행하려면 db2variables 매개변수를 절대 파일 이름에 연관된 db2hpu.cfg 구성 파일에 추가해야 합니다. 이 경로는 기존 파일에 해당해야 합니다. 해당 컨텐츠는 연관된 값이 있는 Db2 변수 이름의 목록이어야 합니다. 주석은 « # » 기호를 같이 사용하여 이 파일에 지정할 수 있습니다.

첫 번째 단계는 다음과 같이 db2hpu.cfg 구성 파일에 db2variables 매개변수를 추가하는 것으로 구성됩니다.
db2variables=/home/i1111/mydb2vars.txt

그런 다음 db2variables 매개변수에 지정된 파일을 작성하고 설정할 Db2 변수만큼의 항목으로 채워야 합니다.

Db2 변수에 대한 항목이 이 파일에 작성되는 경우:
  • 이에 대한 값을 지정해야 합니다.
  • 유효한 Db2 변수를 참조해야 합니다.
  • 지정된 값은 관련 Db2 변수의 데이터 유형과 일치해야 합니다.
다음은 이런 파일 스펙에 대한 예입니다. 이 예의 경우 세 개의 Db2 변수가 포함됩니다. 이들은 각각 INTEGER 데이터 유형의 'variable_int', VARCHAR 데이터 유형의 'variable_varchar', DATE 데이터 유형의 'variable_date'입니다. 이들에 대한 각각의 기본값은 다음과 같습니다.
[i1058@lat111 ~]$ db2 "SELECT variable_int, variable_varchar, variable_date FROM TABLE1"       

1           2                    3
----------- -------------------- ---------- 
          1 default_value        01/01/2010 

 1 record(s) selected.
Optim High Performance Unloaddb2variables 매개 변수 사양을 가진 구성 파일:
[i1058@lat111 cfg]$ cat db2hpu.cfg
# HPU default configuration 
bufsize=2097152 
db2dbdft= 
db2instance= 
doubledelim=binary 
netservice=db2hpudm61
db2variables=/home/i1111/mydb2vars.txt
Db2 변수 설정을 포함하는 파일:
[i1111@lat111 ~]$ cat /home/i1111/mydb2vars.txt
variable_int=10 
variable_varchar='new_value'
variable_date=CURRENT DATE
다음 Db2 변수를 참조하는 SQL문을 기반으로 하는 태스크의 실행 보고서:
[i1058@lat111 ~]$ db2hpu -i i1058 -f sysin
INZM031I Optim High Performance Unload for Db2 06.01.00.002.01(180702) 
         64 bits 07/02/2018 (Linux lat111 x86_64) 
INZI473I Memory limitations: 'unlimited' for virtual memory and 'unlimited' for data segment 
      ----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+ 
000001 GLOBAL CONNECT TO SAMPLE;
000002 UNLOAD TABLESPACE
000003 SELECT variable_int, variable_varchar, variable_date FROM TABLE1;
000004 OUTFILE("outfile")
000005 FORMAT DEL;

INZU462I HPU control step start: 07/02/2018 11:38:56.931. 
INZU463I HPU control step end  : 07/02/2018 11:38:57.147. 
INZU464I HPU run step start    : 07/02/2018 11:38:57.223. 
INZU410I HPU utility has unloaded 1 rows on lat111 host for I1058.TABLE1 in outfile. 
INZU465I HPU run step end      : 07/02/2018 11:38:57.248. 
INZI441I HPU successfully ended: Real time -> 0m0.317090s 
User time -> 0m0.251783s : Parent -> 0m0.251783s, Children -> 0m0.000000s 
Syst time -> 0m0.046225s : Parent -> 0m0.046225s, Children -> 0m0.000000s 
Db2 변수에 대해 설정된 값을 포함하는 출력 파일:
[i1111@lat111 ~]$ cat outfile 
10,"new_value",20180702