Eu estou usando o addBatch(); pra migrar dados de um banco pra outro. e a cada cinquenta registros eu insiro, e vou imprimindo na tela, o meu contador C, o problema que eu estou tendo é o seguinte…
eu tenho acima de 400.000 registros pra inserir, quando chega por volta do 300.000 o sistema não mostra mais que está a inserir mais registros… mostra algo do tipo “Inserindo atualmente C registros”. porém, quando eu vou fazer a consulta no banco, ele só inseriu na verdade 50 registros. não é lançado nenhuma excessão, o sistema não trava, simplemente acontece isso… alguém aqui que utiliza, sabe o que pode estar acontecendo?
[code] public void migraDados2() throws Exception {
try {
//..Aqui feita consulta no banco
while (rs.next()) {
//...Aqui os ps.Set
ps.addBatch();
c++;
if (c == 50) { //..a cada 50 registros ele executa.
ps.executeBatch();
}
}
} catch (Exception ex) {
//..Aqui lança a exceção
} finally {
ps.executeBatch();
//..Executa os batchs restantes e fecha as conexões
}
}[/code]
