Shell 스 크 립 트 는 DB2 데이터베이스 시트 를 파일 로 내 보 냅 니 다.

2762 단어 shelldb2도 출Export
이 Shell 스 크 립 트 는 DB2 데이터베이스 시트 를 파일 로 내 보 내 는 데 사 용 됩 니 다.다른 블 로그 의'자바 코드 가 Shell 스 크 립 트 를 호출 하고 인 자 를 입력 하여 DB2 데이터베이스 시트 를 파일 로 내 보 냅 니 다'에서 자바 코드 를 통 해 이 스 크 립 트 를 호출 하고 인 자 를 입력 합 니 다.
#!/usr/bin/env sh

DBSCHEMA=$1
DBUSER=$2
DBPASSWORD=$3
TABLENAME=$4
FILEPATH=$5
DELIMITER=$6
EXPORTLIMIT=$7

SQLERR="NO ERROR MSG"

############################################################
# : wlog String  
############################################################
wlog () {
   wlog_dt=`date "+%Y/%m/%d-%H:%M:%S" `
   echo "
${wlog_dt} $1" } ############################################################ # : db2connect db2connstring ############################################################ connDB2() { wlog "====================connect to $1======================="      wlog "db2 connect to $1 user $2 " ## conn=db2 connect to $1 user $2 using $3 > /dev/null if( db2 connect to $1 user $2 using $3 > /dev/null ) then wlog "Succeed connect to $1 " else wlog "Failed connect to $1 " exit -1 fi } ############################################################ # : db2connectRelease db2connstring ############################################################ releaseDB2() { db2 connect reset  > /dev/null } ############################################################ # : db2export ############################################################ exportDB2() { connDB2 ${DBSCHEMA} ${DBUSER} ${DBPASSWORD} sql=" select * from ${TABLENAME} ${EXPORTLIMIT}" wlog "export to ${FILEPATH} of del modified by codepage=1208 COLDEL| ${sql}: " db2 "export to ${FILEPATH} of del modified by nochardel codepage=1208 COLDEL| ${sql}" } ############################################################ # : main ############################################################ run() { # connDB2 ${DBNODE} ${DBUSER} ${DBPASSWORD} ${DBNAME} # sql=" select inter_no,op_time from inter_log " # db2 -x ${sql}| while read inter_no op_time # do # echo "Result:${inter_no}->${op_time}" # done echo "Begin to export the data: " exportDB2 echo "Close the connection." releaseDB2 } echo "execute sql ................." run

다음 내 보 내기 명령 은 내 보 내기 파일 에 있 는 문자열 의 작은 따옴표 를 제거 합 니 다.
db2 "export to ${FILEPATH} of del modified by nochardel codepage=1208 COLDEL| ${sql}"

COLDEL 에서 구분자 가|로 지정 되 었 습 니 다.
문자열 더 블 따옴표 명령 을 유지 하려 면:
db2 "export to ${FILEPATH} of del modified by codepage=1208 COLDEL| ${sql}"

주의:
    본 논문 의 매개 변 수 는 EXPORTLIMIT=$7 에 빈 칸 이 있 을 때 문제 가 발생 할 수 있 습 니 다.처리 방법 은 EXPORTLIMIT='echo${@:7}'로 바 꿉 니 다.

좋은 웹페이지 즐겨찾기