gbase8a通过 JDBC 流模式逐行读取的实现方式
本示例展示了通过 JDBC 流模式逐行读取的实现方式,供参考:
示例如下:
package com.gbase.jdbc.simple;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
public class StatementReadBigData {
public void testBigData() throws Exception {
try {
Connection Conn = getConnectionWithProps();
Statement streamStmt = null;
try {
streamStmt = Conn.createStatement(
java.sql.ResultSet.TYPE_FORWARD_ONLY,
java.sql.ResultSet.CONCUR_READ_ONLY);
streamStmt.setFetchSize(Integer.MIN_VALUE); //必须设
置为 Integer.MIN_VALUE,以流式读取;也可以通过修改 jdbc url,通过
defaultFetchSize 参数设置
this.rs = streamStmt.executeQuery("SELECT DUMMYID,
DUMMYNAME "
+ "FROM testbigdata ORDER BY DUMMYID");
while (this.rs.next()) { //必须遍历完所有结果集
this.rs.getString(1);
}
} finally {
if (streamStmt != null) {
streamStmt.close();
}
if(rs != null) {
rs.close();
}
}
} finally {
if(Conn != null) {
Conn.close();
}
} } }
热门帖子
- 12025-12-01浏览数:182759
- 22023-05-09浏览数:25044
- 42023-09-25浏览数:18519
- 52020-05-11浏览数:17526