GBase 8a
其他
文章

gbase8a通过 JDBC 流模式逐行读取的实现方式

发表于2025-03-07 18:24:3038次浏览1个评论

本示例展示了通过 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(); 

 }  } }

评论

登录后才可以发表评论
崔哥发表于 6个月前
兔园标物序,惊时最是梅。衔霜当路发,映雪拟寒开。枝横却月观,花绕凌风台。朝洒长门泣,夕驻临邛杯。应知早飘落,故逐上春来。