sqloader 数据导出怎么写。

问题描述

sqloader 数据导出怎么写。

在数据库中有79张表 将其全部导出为txt格式的文本 该如何实现
导入语句如下:#!/bin/sh
start_time=date +"%Y-%m-%d %H:%M:%S"
start=date +%s

#set -x
user=fina
password=fina
base_dir=/home/oracle/eastloader
ctl_dir=${base_dir}/ctl_dir
log_dir=${base_dir}/log

###########################################################
##get data_date,default the last day of last month##
if [ $# -ne 1 ];then
data_date=date +%Y%m%d
yy=echo ${data_date}|cut -c 1-4
mm=echo ${data_date}|cut -c 5-6
dd=echo ${data_date}|cut -c 7-8
if [ ${mm} -ne 1 ];then
mm=expr ${mm} - 1
aa=cal ${mm} ${yy}
dd=echo ${aa}|awk '{print $NF}'
if [ ${mm} -lt 10 ];then
data_date=${yy}0${mm}${dd}
else
data_date=${yy}${mm}${dd}
fi
else
yy=expr ${yy} - 1
mm=12
bb=31
data_date=${yy}${mm}${bb}
fi
else
data_date=${1}
fi

##create ctl files##

if [ -d ${base_dir}/ctl_dir/${data_date} ];then
rm -rf ${base_dir}/ctl_dir/${data_date}
fi
##create ctl files##

if [ -d ${base_dir}/ctl_dir/${data_date} ];then
rm -rf ${base_dir}/ctl_dir/${data_date}
fi

if [ ! -d ${base_dir}/ctl_dir/${data_date} ];then
mkdir -p ${base_dir}/ctl_dir/${data_date}
fi

#cp ${base_dir}/ctl_dir/${data_date}/* ${base_dir}/ctl_dir/stand/
cd ${base_dir}/ctl_dir/${data_date}
#chmod 755 *

cat ${base_dir}/config.ini | while read line
do
touch B1068H215030001-${line}-${data_date}.ctl
chmod 755 ${base_dir}/ctl_dir/${data_date}/B1068H215030001-${line}-${data_date}.ctl
echo "load data CHARACTERSET ZHS16GBK">>${base_dir}/ctl_dir/${data_date}/B1068H215030001-${line}-${data_date}.ctl
echo "infile '${base_dir}/data_dir/${data_date}/B1068H215030001-${line}-${data_date}.txt'">>${base_dir}/ctl_dir/${data_date}/B1068H215030001-${line}-${data_date}.ctl
cat ${base_dir}/ctl_dir/stand/${line}.ctl >>${base_dir}/ctl_dir/${data_date}/B1068H215030001-${line}-${data_date}.ctl
done

###########################################################
##main sqlloader##
if [ -d ${base_dir}/log/${data_date} ];then
rm -rf ${base_dir}/log/${data_date}
fi

if [ ! -d ${base_dir}/log/${data_date} ];then
mkdir -p ${base_dir}/log/${data_date}
fi

if [ -f ${base_dir}/${data_date}_load_main.log ];then
rm -rf ${base_dir}/${data_date}_load_main.log
fi

cd ${base_dir}

cat ${base_dir}/config.ini | while read line
do
echo "${base_dir}/data_dir/${data_date}/B1068H215030001-${line}-${data_date}.txt"
if [ -f ${base_dir}/data_dir/${data_date}/B1068H215030001-${line}-${data_date}.txt ];then
sqlldr userid=${user}/${password} direct=true control=${base_dir}/ctl_dir/${data_date}/B1068H215030001-${line}-${data_date}.ctl log=${base_dir}/log/${data_date}/B1068H215030001-${line}-${data_date}.log rows=100000 readsize=25800000 bindsize=25800000

echo "<<<<<<<<<<<<<<<<<<<<date +%Y%m%d-%H:%M:%S start to load ${line}">>${data_date}_load_main.log
cat ${base_dir}/log/${data_date}/B1068H215030001-${line}-${data_date}.log|grep "Total logical records skipped">>${data_date}_load_main.log
cat ${base_dir}/log/${data_date}/B1068H215030001-${line}-${data_date}.log|grep "Total logical records read">>${data_date}_load_main.log
cat ${base_dir}/log/${data_date}/B1068H215030001-${line}-${data_date}.log|grep "Total logical records rejected">>${data_date}_load_main.log
cat ${base_dir}/log/${data_date}/B1068H215030001-${line}-${data_date}.log|grep "Total logical records discarded">>${data_date}_load_main.log
else
echo ">>>>>>>>>>>>>>>THE DATA FILE IS NOT READY!! ${line}">>${data_date}_load_main.log
fi
done

end_time=date +"%Y-%m-%d %H:%M:%S"
end=date +%s
echo "中间表数据结转成功,时间总计:"expr $end - $start

导出语句我该如何去写

解决方案

http://wenku.baidu.com/link?url=rKXlv4UYww4v6UNQq8gYHtAUi-kxsRun2J0fZ5pjF59lkbGK_NdLLoqdxeAlDQfYnDO4iG-bh501Yb1GnqIPAhkPQzb2cLEV48T-xs7CLca

解决方案二:

http://blog.chinaunix.net/uid-23412974-id-2425222.html

时间: 2024-08-25 07:28:04

sqloader 数据导出怎么写。的相关文章

Java数据导出(写)Excel文件 解析

在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主.下面给出用java写入数据到excel表格方法: 1.添加jar文件 java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件.下载地 址:http://www.andykhan.com/jexcelapi/ 2.jxl对Excel表格的认识 可以参见http://www.cnblogs.com/xudong-b

我写的一个将数据库数据导出到EXCEL的类(ASP)

excel|数据|数据库 clsExport2Excel.asp<%'类开始Class clsExport2Excel '声明常量.变量Private strFilePath,strTitle,strSql,strField,strRows,strColsPrivate strCn,strHtml,strPathPrivate objDbCn,objRsPrivate objXlsApp,objXlsWorkBook,objXlsWorkSheetPrivate arrField '初始化类Pr

利用PHPExcel将数据导出到xls格式的excel文件

在开发某地的经营许可证管理系统的时候需要将数据导出打excel文件,虽然一年前做某集团的ERP的时候用到过一次导入和导出,但是那时候太忙没时间写博客,一年过去了我也忘的差不多了,所以趁着今天将此次的使用写到博客中,作为以后开发的一个参考,免得再次使用的时候需要导出找资料,也给其他同行一个参考.作者:DragonDean,博客地址:http://www.cnblogs.com/dragondean/   什么是PHPExcel? PHPExcel 是用来操作Office Excel 文档的一个PH

解决google webmaster tool数据导出乱码问题

这是一个众所周知的seo一大利器,在使用的时候确实可以帮助我提升seo效率,应该每一个SEOer都应该去申请使用的seo基础工具.我本人也google网站管理员工具的一大爱好者,觉得这个工具确实是在工作当中帮助了我解决很多的问题,比如简单的HTML错误到复杂的网站被别人恶意攻击等等,google网站管理员工具都能够几时发现问题,并给出合理的修改意见,从而节省了不必要的时间,提高了SEO工作效率. google webmaster tool当中我个人喜欢把数据导出来分析,因为这样比较细一点,也可以

机房收费系统的实现:VB中如何将MSHFlexGrid控件中的数据导出到Excel

机房收费系统中,好多查询的窗体都包含同一个功能:将数据库中查询到的数据显示在MSHFlexGrid控件中,然后再把MSHFlexGrid控件中的数据导出到Excel表格中. 虽然之前做过学生信息管理系统,不过并没有涉及到这个功能,因此记录于此,于己,回顾反思,于大家,分享学习. 方法一:在根目录中事先建立空的Excel表格 1.在与VB工程同一根目录中建立将要导入数据的Excel表格: 2.在VB事件中写代码: Private Sub cmdExport_Click() Dim i As Int

将DBGrid中的数据导出到Word和Excel

昨天ccrun刚写了将ListView中内容导出到Word文档和Excel文档的一篇文章,今天写程序凑巧用到了将DBGrid中数据导出到Office的功能,干脆再写个兄弟版的函数出来,DBGrid2Word和DBGrid2Excel,分别实现将DBGrid中数据导出到Word和Excel文档.需要注意的是DBGrid中的数据并不代码数据库中所有的数据,因为数据集在打开的时候有可能进行了筛选,取决于使用者如何打开这个数据集,总之就是DBGrid中显示多少数据,就导出多少.看在写代码很辛苦的份上,请

C#将数据导出到Execl汇总

一.asp.net中导出Execl的方法: 在asp.net中导出Execl有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出流写给浏览器.在Response输出时,t分隔的数据,导出execl时,等价于分列,n等价于换行. 1.将整个html全部输出execl 此法将html中所有的内容,如按钮,表格,图片等全部输出到Execl中. Response.Clear(); Response.Buffer= true; Response

SQL2005CLR函数扩展-数据导出的实现详解

SQLServer数据导出到excel有很多种方法,比如dts.ssis.还可以用sql语句调用openrowset.我们这里开拓思路,用CLR来生成Excel文件,并且会考虑一些方便操作的细节. 下面我先演示一下我实现的效果,先看测试语句--------------------------------------------------------------------------------exec BulkCopyToXls 'select * from testTable' , 'd:

sqlite-Android如何将SQLite数据库中的数据导出为csv格式的文件

问题描述 Android如何将SQLite数据库中的数据导出为csv格式的文件 搜到了下边这个方法,但是我没实现功能,请各位指教.最好能有代码 public void ExportToCSV(Cursor c, String fileName) { int rowCount = 0; int colCount = 0; FileWriter fw; BufferedWriter bfw; File sdCardDir = Environment.getExternalStorageDirecto