数据库的 CSV 导出还在手动拼 SQL?你可以试试 sqluldr2,一个蛮轻巧的命令行工具,专门干这事的,导出速度也挺快。
sqluldr2.zip 里面直接带了 Windows 和 Linux 的可执行文件,分别是 sqluldr2.exe
和 sqluldr2_linux32_10204.bin
/sqluldr2_linux64_10204.bin
,你看系统环境选对版本就行。
工具用起来也不复杂。准备一个控制文件,写清字段分隔符和字段名啥的,用批或命令行跑一下,比如:
sqluldr2 用户名/密码@数据库 control=控制文件.ctl log=日志.log data=导出.csv
压缩包里还贴心附了个 exx.bat
示例,照着改改就能用了。配置里也挺灵活,比如字段用,
分隔,支持"
包裹字段,还能跳过空字段,像这样:
LOAD DATA INFILE 'data_file.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(field1, field2, ...)
小建议:注意编码,别导出后全是乱码;数据量大的时候,分批或加点并发也挺有用的。
如果你常在 Oracle 里倒数据做,或者需要批量导出数据做备份,这个工具真心推荐。