Oracle数据库导出txt格式工具sqlload2使用

 开发需求:需要在数据库中查询数据,最终得到cxv表格形式数据。

使用plsql导出70M数据量非常慢,本次使用sqlload2工具,导出文本txt文本格式。

1)导出txt文本文件
$ ./sqluldr2_linux64_10204.bin YUTONG_SHFW/xx query="SELECT LSVE.LSVE_VEHICLE_NO AS 车工号, ······ > WHERE 1 = 1;" file=LS_VEHICLE.txt 0 rows exported at 2019-09-18 18:32:21, size 0 MB. 727102 rows exported at 2019-09-18 18:32:28, size 231 MB. output file LS_VEHICLE.txt closed at 727102 rows, size 231 MB.
2)导出csv文件

[oracle@ytwebdb ~]$ ./sqluldr2linux64.bin system/zz_db.207 field=, head=yes sql=20191015_01.sql file=20191015_01.csv

使用逗号进行分隔=>field=,
显示列名称=>head=yes




操作介质及使用手册

链接:https://pan.baidu.com/s/1e2AuJ7xXLxyUMEMo1RmgXA
提取码:ansg

 

遇到的问题记录:

1.导出报错

error while loading shared libraries: libclntsh.so.10.1: cannot open shared object file: No such file or directory

发现,echo $LD_LIBRARY_PATH NULL  

通过find / -name libclntsh.so.10.1 找到文件路径,临时指定环境变量

export LD_LIBRARY_PATH=/oracle/product/11.2.0.4/lib/

 

2.导出文件乱码

export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"  通过这种方式修改语言格式,经测试可以接受。

 

3.使用,逗号进行分隔后,导出的csv文件有换行现象,使用其它方式进行分隔,原因是使用,逗号进行分隔列,但是如果列的内容中存在,逗号,那么导出的问题显示自动分隔!!!

 导出文本后,使用Notepad++,或者使用UE(没有破解),TXT文本编辑器(文件大很慢)使用Encoding进行格式转换,转换为utf8-8-BOM格式文本后,修改文件后缀.csv即可

posted @ 2019-09-19 09:07  绿茶有点甜  阅读(1444)  评论(0编辑  收藏  举报