该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. JavaScript 全国级省市县联动

    <div class="right_content clearfix"> <h3 class="common_title2">收货地址& ...

  2. Spring Data Jpa一对多单向映射

    /** @author StormMaybin @date 2017-01-17 */ 生命不息,奋斗不止! 一对多映射关系 在JPA中,用@OneToMany来标识一对多的关系.实现一对多的单向关联 ...

  3. python 字符串方法isdigit()

    python isdigit() 方法检测字符串是否只有数字组成. 语法: isdigit()方法语法: str.isdigit() 参数:无 返回值: 如果字符串中只含有数字则返回True,否则返回 ...

  4. httpClient Post例子,Http 四种请求访问代码 HttpGet HttpPost HttpPut HttpDelete

    httpclient post方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 //----1. HttpPost request = new HttpPost(ur ...

  5. echarts实现多条可拖动节点的折现图

    这篇博文主要是利用echarts实现两条以及多条可拖动节点的曲线,demo脱胎于官方demo,在官方demo的基础上添加了另一条曲线.因为之前写过一篇在vue中使用echarts实现可拖动节点的折线图 ...

  6. 【43.49%】【hdu3308】LCIS

    Time Limit: 6000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission ...

  7. 洛谷——P1305 新二叉树(新建二叉树以及遍历)

    题目描述输入一串二叉树,用遍历前序打出. 输入输出格式输入格式: 第一行为二叉树的节点数n.(n \leq 26n≤26) 后面n行,每一个字母为节点,后两个字母分别为其左右儿子. 空节点用*表示 输 ...

  8. C#使用SmtpClient发送邮件解决授权码配置问题

    授权码,(新版邮箱在开启smtp权限设置时,会生成授权码)如果不做配置,客户端是不能发送邮件的 //指定邮箱账号和密码,需要注意的是,这个密码是你在QQ邮箱设置里开启服务的时候给你的那个授权码 Smt ...

  9. ssh批量免密

    expect命令在linux下实现批量ssh免密 发布时间:2017-11-27 08:41:39 投稿:laozhang 本次文章主要给大家讲解了在linux系统下用expect命令实现批量ssh免 ...

  10. git authentication failed for 或 fatal:not a git repository

    第一种解决 (我的是第一种解决) github上更改密码之后,我在本地操作git发现出错,错误代码如上,在网上搜了一圈,没有解决问题,后发现需要进行如下操作: 进入控制面板>用户账号>凭据 ...