【发布时间】:2015-07-17 08:59:23
【问题描述】:
我需要从我在数据库中创建的队列中进行选择查询,该视图有大约 30,00,000 行,读取这些数据并使用 JTDS JDBC 驱动程序存储在本地内存中大约需要 2 分钟。我读取数据的顺序无关紧要。现在我只是使用准备好的语句并从结果集中读取。有没有更好的方法从数据库中读取? 我正在阅读 MS SQL server 。 我现在的阅读方式是
public ResultSet getData(String view_name) throws SQLException {
String SQL="select * from "+view_name;
PreparedStatement stmt=conn.prepareStatement(SQL);
resultSet= stmt.executeQuery();
resultSet.setFetchSize(8000);
return resultSet;
}
【问题讨论】:
-
请告诉我们您是如何读取数据库的。
-
第一个问题一如既往:你真的需要内存中的所有数据吗?
-
是的,我需要将它存储到一个文件中。
-
是否可以将数据处理部分移动到数据库中,然后只获取处理后的结果?
标签: java sql-server multithreading jdbc jtds