Обсуждение: Strange executing batch
Hi , pgsql-jdbc.
How jdbc driver works with batch in one transaction all added
statement or each statement in individual transaction?
Class.forName("org.postgresql.Driver");
Connection c = DriverManager.getConnection("jdbc:postgresql:....");
PreparedStatement p = c.prepareStatement("insert into test(test) values(?)");
c.setAutoCommit(false);
for (int i = 0; i < 1000; i++) {
p.setString(1, "test"+i);
p.addBatch();
}
p.executeBatch();
If at executing executeBatch() on 500 statement error is arised ,that
for some reason first 499 statement are committed.
--
Truly yours,
Ilya mailto:i_il@mail.ru
Greetings,
IB> Class.forName("org.postgresql.Driver");
IB> Connection c = DriverManager.getConnection("jdbc:postgresql:....");
IB> PreparedStatement p = c.prepareStatement("insert into test(test) values(?)");
IB> c.setAutoCommit(false);
IB> for (int i = 0; i < 1000; i++) {
IB> p.setString(1, "test"+i);
IB> p.addBatch();
IB> }
IB> p.executeBatch();
IB> If at executing executeBatch() on 500 statement error is arised ,that
IB> for some reason first 499 statement are committed.
Any suggestions/thoughts on the question? I'm not sure this is a JDBC
issue but the problem looks dangerous.
--
Alexander V. Morokhovets
+7 3832 132528
Shamrock Games
efdi@shamrock-games.ru
http://www.shamrock-games.ru