歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> SHELL編程

Shell腳本實現DB2數據庫表導出到文件

該Shell腳本用於實現將DB2數據庫表導出到文件,將在另一篇博文《Java代碼調用Shell腳本並傳入參數實現DB2數據庫表導出到文件》中通過Java代碼實現調用該腳本並傳入參數。

#!/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 "\n${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}"

大話設計模式(帶目錄完整版) PDF+源代碼 http://www.linuxidc.com/Linux/2014-08/105152.htm

Java中介者設計模式 http://www.linuxidc.com/Linux/2014-07/104319.htm

Java 設計模式之模板方法開發中應用 http://www.linuxidc.com/Linux/2014-07/104318.htm

設計模式之 Java 中的單例模式(Singleton) http://www.linuxidc.com/Linux/2014-06/103542.htm

Copyright © Linux教程網 All Rights Reserved