将行从数据库导出到CSV文件

时间:2018-12-21 07:16:23

标签: java oracle export-to-csv resultset

我想使用Java将数据库中的大量数据(几百万行)导出到csv文件中。在这一刻,我遍历结果集,将行添加到列表中,然后每隔1000行将行写入文件中,然后清除列表。

在这一刻,我花了大约50秒钟来导出50万行。还有其他更快的方法可以进行此导出吗?

谢谢。

2 个答案:

答案 0 :(得分:2)

打开Toad并连接到数据库。 然后单击菜单数据库>编辑器,以打开SQL编辑器窗口。 在“ SQL编辑器”窗口中,键入您的SQL查询,然后按Ctrl + Enter执行并在网格中获取结果。下面是一个SQL查询的示例。

  

选择“客户名称”,              cust_last_name,              cust_city,              cust_state_province,              cust_main_phone_number         来自sh.customers        WHERE country_id ='52775'并且cust_valid ='A';

然后右键单击Toad中的Grid,然后从快捷菜单中选择Export Dataset选项。 在“导出数据”窗口中,选择下图所示的选项,以将数据从Toad导出到CSV文件。从“导出格式”下拉列表中选择“分隔文本”选项。在“文件”字段中指定文件位置和名称。指定定界符,然后单击“确定”导出。

Export CSV from toad

答案 1 :(得分:0)

我使用了Prepared Statement中的.setFetchSize(1000)方法,可以在大约40秒内导出大约400万行。

也许对其他人有用。 :D