SQLULDR2
Oracle提供了高效的文本装载工具(sqlldr)来装载格式化文本文件(如CSV文件)里的数据到Oracle中,却不提供一个文本导出工具来做不同数据库之间的数据交换。特别是在各种大数据技术兴起的年代,文本文件是最好的数据交搞方式,看来是必须得自己写程序或脚本来做这个工具了。SQLULDR2就是为此目的而用OCI接口编写的高效工具,并且已经被全世界的Oracle DBA使用超过10年了。 下面是一个使用SQLULDR2工具从Oracle数据库中导出数据的例子:
1. $ sqluldr2 test/test query="select * from tab" file=tab.txt
2. 0 rows exported at 2016-01-28 22:10:22, size 0 MB.
3. 6 rows exported at 2016-01-28 22:10:22, size 0 MB.
4. output file tab.txt closed at 6 rows, size 0 MB.
命令行中的”test/test”表示用户名和口令,选项“query”用来指定查询要导出的数据的SQL语句,而“file”选项则指定保存数据的文件名,这三个是必要的选项。你可以来看一下导出的文件的内容,默认使用逗号来分隔字段,而用换行符来分隔不同的记录。
1. $ cat tab.txt
2. ACT_RU_TASK,TABLE,
3. HPISLEM,TABLE,
4. TEST1,TABLE,
5. T_TEST,TABLE,
6. T_TEST2,TABLE,
7. VIEWTEST,TABLE,
1