Nejsem si jistý, že toto je způsob, jak to udělat pomocí addBatch
kromě způsobu, který používáte. Další věc, kterou můžete zkusit, je opustit addBatch()
a zkuste místo toho vypnout automatické potvrzení. Pak můžete použít stmt.getGeneratedKeys();
. Něco jako:
connection.setAutoCommit(false);
stmt.executeUpdate("insert into table1(\"id_auto_generated\", \"foo\") ...");
DatabaseResults results = stmt.getGeneratedKeys();
// extract the id from the results
stmt.executeUpdate("insert into table2(\"table1_id\", \"boo\") ...");
... many more stmts here
connection.commit();
connection.setAutoCommit(true);
Doufám, že to pomůže.