我正在将 Java 中的表数据写回到我的 MYSQl dB。但执行一个executeBatch需要1.241秒!这是我的代码:
updateLieferant = conn.prepareStatement(
"UPDATE "+dbnames.artikel.name+" SET Abteilung = ? , statusAusmessen = ? , Status = ? "
+" WHERE " +dbnames.auftragsnummer +" = ? " +" AND " +dbnames.artikelnummer +" = ?");
updateLieferant.setString( 1, "blabla" );
updateLieferant.setString( 2, "blabla" );
updateLieferant.setString( 3, "blabla" );
updateLieferant.setString( 4, "blabla");
updateLieferant.setString( 5, "blabla" );
long time = System.nanoTime();
updateLieferant.executeBatch();
time = System.nanoTime()- time;
System.out.println(time/1000000);
输出 1241 毫秒...我做错了什么吗?从这个页面我看到它应该需要大约 100 毫秒。 http://rostislav-matl.blogspot.ch/2011/08/fast-inserts-to-postgresql-with-jdbc.html
最佳答案
executeBatch 用于多次执行语句,如您发布的链接中的 BPI 部分(它在循环中),但在这里您只执行一次。
相反,尝试
updateLieferant.executeUpdate();
关于java - mysql odbcexecuteBatch需要很长时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20563160/