Ler registros bancos de poucos em poucos via jdbc

4 respostas
cezbatistao

Fala galera,

tenho uma tabela q tem mais de um bilhão de registros :shock:

e gostaria de saber alguma forma de via jdbc, ler tipo de 5000 a 5000 registros do banco… algo desse tipo, teria q usar threads!? :roll:

desde já agradeço a atenção de todos :wink:

4 Respostas

Gobain

vc pode definir o tamanho do seu batch, ou na query mesmo usar um limit com o volume q vc quer.

analyser

Só vc fazer um contador no resultset para quando chegar no 5000 para-se e por ai vai

int cont=0;

while(cont<5000){

rs.next();

cont++;

}
cezbatistao
PreparedStatement ps = OracleDAOFactory.getConnection().prepareStatement(query);
  ps.setMaxRows(10);
  ResultSet rs = ps.executeQuery();

  while(rs.next()) {
    xxx
  }

fazendo assim consegui q ele soh pegasse 10 registros :stuck_out_tongue:

agora se eu quiser continuar, eh sou eu pegar o meu ResultSet e dar next de novo!?

while(rs.next()) {
    xxx
  }
Gobain

carlox:

agora se eu quiser continuar, eh sou eu pegar o meu ResultSet e dar next de novo!?

while(rs.next()) { xxx }

Acredito que não. Vc tem q fazer uma nova consulta a partir do ponto onde vc parou, pq só foram pegos 10 linhas…

Criado 28 de agosto de 2007
Ultima resposta 28 de ago. de 2007
Respostas 4
Participantes 3