该Shell脚本用于实现将DB2数据库表导出到文件,将在另一篇博文《Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件》中通过Java代码实现调用该脚本并传入参数。

 #!/usr/bin/env sh

 DBSCHEMA=$
DBUSER=$
DBPASSWORD=$
TABLENAME=$
FILEPATH=$
DELIMITER=$
EXPORTLIMIT=$ 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 $ user $ using $ > /dev/null
if( db2 connect to $ user $ using $ > /dev/null )
then
wlog "Succeed connect to $1 "
else
wlog "Failed connect to $1 "
exit -
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}"

Shell脚本实现DB2数据库表导出到文件的更多相关文章

  1. Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件

    本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import ...

  2. Shell 脚本批量创建数据库表

    使用 Shell 脚本批量创建数据表 系统:Centos6.5 64位 MySQL版本:5.1.73 比如下面这个脚本: #!/bin/bash #批量新建数据表 for y in {0..199}; ...

  3. Shell脚本备份Mongodb数据库

    目录 环境还原 环境创建 编写shell脚本 准备文件 创建shell脚本 执行shell脚本 进阶版 感谢 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Shell脚本备份Mongo ...

  4. shell 脚本操作informix数据库

    shell 脚本操作informix数据库的简单模板: functionName(){ dbaccess << ! database 库名; sql语句; ! } 栗子1:更新数据 fun ...

  5. shell脚本操作mysql数据库

    shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql  -hhostname -Pport -uusername -pp ...

  6. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  7. c#自带压缩类实现数据库表导出到CSV压缩文件

    c#自带压缩类实现数据库表导出到CSV压缩文件的方法 在导出大量CSV数据的时候,常常体积较大,采用C#自带的压缩类,可以方便的实现该功能,并且压缩比例很高,该方法在我的开源工具DataPie中已经经 ...

  8. shell脚本监控Flume输出到HDFS上文件合法性

    在使用flume中发现由于网络.HDFS等其它原因,使得经过Flume收集到HDFS上得日志有一些异常,表现为: 1.有未关闭的文件:以tmp(默认)结尾的文件.加入存到HDFS上得文件应该是gz压缩 ...

  9. shell脚本:备份数据库、代码上线

    备份MySQL数据库场景:一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份 需求:1)每天备份一次,需要备份所有的库2)把备份数据存放到/data/backup/下3 ...

随机推荐

  1. Mac MAMP 使用终端shell操作mysql数据库

    在MAMP中已经集成了phpMyAdmin,可以很方便的管理mysql数据库,但是有的情况是phpMyAdmin不能做到的.比如,导入sql文件,当sql文件非常大(大于20MB)的时候,apache ...

  2. 2019-3-8-win10-uwp-渲染原理-DirectComposition-渲染

    title author date CreateTime categories win10 uwp 渲染原理 DirectComposition 渲染 lindexi 2019-03-08 09:18 ...

  3. PHP两个变量值互换(不用第三变量)

    <?php /**  * 双方变量为数字或者字符串时  * 使用list()和array()方法可以达到交换变量值得目的  */ $a = "This is A"; // a ...

  4. Python--day47--mysql索引类型介绍

    组合索引(联合索引)详讲:组合索引相对索引合并的缺点是 覆盖索引和索引合并不是真实的索引,只是名词: 命中索引,要避免使用哪些:id.nid是主键 email,num()是索引 1,避免使用like ...

  5. JAVA配置系统变量

    CLASSPATH= .;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar JAVA_HOME = C:/Program Files/Java/jdk1 ...

  6. java 泛型的上限与下限

    设置泛型对象的上限使用extends,表示参数类型只能是该类型或该类型的子类: 声明对象:类名<? extends 类> 对象名 定义类:类名<泛型标签 extends 类>{ ...

  7. linux scull 中的设备注册

    在内部, scull 使用一个 struct scull_dev 类型的结构表示每个设备. 这个结构定义为: struct scull_dev { struct scull_qset *data;  ...

  8. javascript基础之数组一

    <script type="text/javascript"> //求数组中最大的数 var arr=[123,456,789,657,432,564]; var ar ...

  9. Linux 内核

    在接口总线领域的最新的一项是外部总线的整个类. 这包括 USB, 固件, 和 IEEE1284(基 于并口的外部总线). 这些接口有些类似于老的非外部的技术, 例如 PCMCIA/CardBus 和 ...

  10. luoguP2679 子串

    luoguP2679 子串 个人感觉\(noip\)系列中挺好的一道DP题目. 题面有点难理解. 我们设\(f_{i,j,k,0/1}\)表示\(A\)串前\(i\)个字符,匹配\(B\)串前\(j\ ...