tava tentando fazer um grupo de INSERT numa tabela e para isso ‘agrupava’ os INSERT como o addBath() para depois executar todos de uma vez na tabela com o executeBatch(), mas sei la pq somente o ultimo insert de cada grupo esta sendo feito, sera q ta faltando alguma coisa ou to fazendo besteira?
Obrigado
for(int contArquivos = 0; contArquivos < 5; contArquivos++){
//LE LINHA POR LINHA DE CADA ARQUIVO
while((line = reader.readLine()) != null){
switch(contArquivos){
case 0: //PAS
pstmt1 = conbd.prepareStatement("INSERT INTO " + nome_tabelas[contArquivos] + camposInsert + " VALUES (?,?,?,?,?,?,?,?,?)");
pstmt1.setString(1, valor2);
pstmt1.setInt(2, Integer.parseInt(valor1));
pstmt1.setInt(3, Integer.parseInt(valor3));
pstmt1.setInt(4, Integer.parseInt(valor4));
pstmt1.setFloat(5, Float.parseFloat(valor5));
pstmt1.setInt(6, Integer.parseInt(valor6));
pstmt1.setFloat(7, Float.parseFloat(valor7));
pstmt1.setFloat(8, Float.parseFloat(valor8));
pstmt1.setInt(9, Integer.parseInt(valor9));
pstmt1.addBatch();
break;
case 4: //EQP
pstmt1 = conbd.prepareStatement("INSERT INTO " + nome_tabelas[contArquivos] + camposInsert + " VALUES (?,?,?,?,?,?)");
pstmt1.setString(1, valor2);
pstmt1.setInt(2, Integer.parseInt(valor1));
pstmt1.setInt(3, Integer.parseInt(valor3));
pstmt1.setInt(4, Integer.parseInt(valor4));
pstmt1.setInt(5, Integer.parseInt(valor5));
pstmt1.setString(6, valor6); //lado
pstmt1.addBatch();
break;
default: //PDS, LIA, MUL
pstmt1 = conbd.prepareStatement("INSERT INTO " + nome_tabelas[contArquivos] + camposInsert + " VALUES (?,?,?,?)");
pstmt1.setString(1, valor2);
pstmt1.setInt(2, Integer.parseInt(valor1));
pstmt1.setInt(3, Integer.parseInt(valor3));
pstmt1.setInt(4, Integer.parseInt(valor4));
pstmt1.addBatch();
break;
}
}//fim do while que percorre as linhas de um arquivo
//executar DELETE entre dataInicio e dataFim, antes de executar INSERT
if(verificaPrimeiroRegistro > 1){
pstmt2 = conbd.prepareStatement("DELETE FROM "
+ nome_tabelas[contArquivos] + " WHERE (" + bh_dthr
+ " >= '" + dataInicioBuraco + "' AND " + bh_dthr + " <= '"
+ dataFimBuraco + "')");
pstmt2.executeUpdate();
}else{
pstmt2 = conbd.prepareStatement("DELETE FROM "
+ nome_tabelas[contArquivos] + " WHERE " + bh_dthr
+ " = '" + dataInicioBuraco + "'");
pstmt2.executeUpdate();
}
System.out.println("Deletado o intervalo na tabela");
pstmt1.executeBatch();
}//fim do for que percorre os 5 arquivos