Shell脚本实现DB2数据库表导出到文件
该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数据库表导出到文件的更多相关文章
- Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件
本文通过Java代码调用Shell脚本并传入参数实现DB2数据库表导出到文件,代码如下: import java.io.File; import java.io.IOException; import ...
- Shell 脚本批量创建数据库表
使用 Shell 脚本批量创建数据表 系统:Centos6.5 64位 MySQL版本:5.1.73 比如下面这个脚本: #!/bin/bash #批量新建数据表 for y in {0..199}; ...
- Shell脚本备份Mongodb数据库
目录 环境还原 环境创建 编写shell脚本 准备文件 创建shell脚本 执行shell脚本 进阶版 感谢 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Shell脚本备份Mongo ...
- shell 脚本操作informix数据库
shell 脚本操作informix数据库的简单模板: functionName(){ dbaccess << ! database 库名; sql语句; ! } 栗子1:更新数据 fun ...
- shell脚本操作mysql数据库
shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql -hhostname -Pport -uusername -pp ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- c#自带压缩类实现数据库表导出到CSV压缩文件
c#自带压缩类实现数据库表导出到CSV压缩文件的方法 在导出大量CSV数据的时候,常常体积较大,采用C#自带的压缩类,可以方便的实现该功能,并且压缩比例很高,该方法在我的开源工具DataPie中已经经 ...
- shell脚本监控Flume输出到HDFS上文件合法性
在使用flume中发现由于网络.HDFS等其它原因,使得经过Flume收集到HDFS上得日志有一些异常,表现为: 1.有未关闭的文件:以tmp(默认)结尾的文件.加入存到HDFS上得文件应该是gz压缩 ...
- shell脚本:备份数据库、代码上线
备份MySQL数据库场景:一台MySQL服务器,跑着5个数据库,在没有做主从的情况下,需要对这5个库进行备份 需求:1)每天备份一次,需要备份所有的库2)把备份数据存放到/data/backup/下3 ...
随机推荐
- SuperSocket主动从服务器端推送数据到客户端
关键字: 主动推送, 推送数据, 客户端推送, 获取Session, 发送数据, 回话快照 通过Session对象发送数据到客户端 前面已经说过,AppSession 代表了一个逻辑的 socke ...
- HDU 6621"K-th Closest Distance"(二分+主席树)
传送门 •题意 有 $m$ 次询问,每次询问求 $n$ 个数中, $[L,R]$ 区间距 $p$ 第 $k$ 近的数与 $p$ 差值的绝对值: •题解 二分答案,假设当前二分的答案为 $x$,那么如何 ...
- python基础十一之装饰器进阶
函数的双下划线方法 def hahahha(): """测试函数""" print('zxc') print(hahahha.__name_ ...
- CF1163F Indecisive Taxi Fee
NOIP之前留的坑 CF1163F Indecisive Taxi Fee 经典问题:删边最短路 在Ta的博客查看 任意找一条最短路E,给E上的点和边新加入一个1~len的编号 最短路上的边变大麻烦 ...
- Ultra-QuickSort——[归并排序、分治求逆序对]
Description In this problem, you have to analyze a particular sorting algorithm. The algorithm proce ...
- python调用java代码,jpype简单使用
- vue-cli3 使用 svg-sprite-loader 的坑
chainWebpack: config => { config.module.rules.delete("svg"); //重点:删除默认配置中处理svg, //const ...
- vue权限篇
前言 在一个项目中,一些功能会涉及到重要的数据管理,为了确保数据的安全,我们会在项目中加入权限来限制每个用户的操作.作为前端,我们要做的是配合后端给到的权限数据,做页面上的各种各样的限制. 需求 因为 ...
- vue-learning:14 - js - new Vue(options)中option
new Vue(options)中option 2019-4-14 Vue的核心是数据驱动,在template中实现视图逻辑,在javascript中实现业务逻辑.要通过模板template将数据显示 ...
- Qt3升至Qt4需要注意的几件事项浅谈
Qt3升至Qt4需要注意的几件事项浅谈 公司以前的项目是用Qt3写的,随着时间的推移慢慢显示出Qt3有多方面的限制,因此先公司决定用Qt4来改写这个项目,并为软件添加新功能,在此背景先编写此文章. 先 ...