有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

derby如何从数据库中读取大量数据并用java编写文件?

我有一个derby数据库,至少有2GB的数据,我必须读取这些数据并写入文本文件。现在,有些列可能是blob数据类型

我目前的方法是以10(比方说)的批量大小一次从一个表中读取数据,并将数据(字符串列表)放入最大大小为10的数组阻塞队列中。从队列中,一个线程将逐个拾取元素并写入文件

我面临着以下问题:

  1. how to fetch 10 rows from a table in a single hit and fetch next 10 rows in second
  hit and so on.
  2. how to convert blob and binary data into string 

共 (1) 个答案

  1. # 1 楼答案

    你没有办法明确地做到这一点。但是你可以设置抓取大小。这个参数向JDBC驱动程序提示要从数据库一次获取的行数。但是司机可以忽略这一点,做自己认为合适的事情。有些驱动程序将行分块提取,有些只需一次性读取整个结果集

    使用fetch size(取决于驱动程序)将缓冲数据,因此在性能方面没有问题,因为它隐式地为您执行分块。所以我们从resultset获取数据的方式基本上没有区别