Ksh db2 insert sql result
DB CAFE
thumb_up 추천메뉴 바로가기
- DBA { Oracle DBA 명령어 > DBA 초급 과정 > DBA 고급 과정 }
- 튜닝 { 오라클 튜닝 목록 }
- 모델링 { 데이터 모델링 가이드 }
건수 처리
db2 -m "insert into test values(1)" | grep "Number of rows affected" |awk '{print $6}' | read V_COUNT
echo $V_COUNT
KSH 전체
- fork 적용
- awk print
- read var : $var로 변수입력 됨
- 언더바 처리 안됨? $DR = '+'로 처리
- 파라메터 받기 ${#}
#!/bin/ksh
if [ ${#} -ne 3 ]
then
echo "use parameter :ex) ./SH_SUBUL_JOB.ksh JOBNAME SRC_TABLE day_list_2018.txt"
exit 255
fi
echo "dw subl db $1 $2 $3 converting..."
HOME=/home/mig_adm
DR='_'
JBNAME=$1
TBNAME=$2
DAY_TXT=$3
funcall () {
echo Z#$TBNAME
cat $HOME/CYKIM/$DAY_TXT | while read var ; do db2 -v connect to mgsdw user mig_*** using ****1234; db2 "CALL MIG_ADM.MP0_JOB_SWITCH_ON('$JBNAME','Z#$TBNAME$DR$var');"; db2 -mvf $HOME/CYKIM/Z#$TBNAME$DR$var.SQL |grep "Number o
f rows affected" |awk '{print $6}' | read V_COUNT;db2 "INSERT INTO MIG_ADM.MIG_SUBL_LOG (JOBNAME,TABLE_NAME,TGT_TABLE_NAME,PART_DT,INS_ROWS) VALUES ('$JBNAME','$TBNAME','Z#$TBNAME$DR$var','$var','$V_COUNT')"; db2 "CALL MIG_ADM.
MP0_JOB_SWITCH_OFF('$JBNAME','Z#$TBNAME$DR$var');"; done
echo "job completed..."
}
fork () {
funcall &
}
fork
child_pid="$!"
wait "$child_pid"