トランザクションから生成されたキーを取得しようとしていますexecuteBatch()
が、最後に追加されたキーしか取得できません。
これは私のコードです:
PreparedStatement ps_insert = conn.prepareStatement(insertQuery, PreparedStatement.RETURN_GENERATED_KEYS);
for (int i = 0 ; i < adding_dates.length ; i++){
ps_insert.setInt(1, Integer.parseInt(consultant_id));
ps_insert.setDate(2, adding_dates[i]);
ps_insert.setInt(3, Integer.parseInt(room_id));
ps_insert.addBatch();
}
ps_insert.executeBatch();
ResultSet rs = ps_insert.getGeneratedKeys(); //<-- Only the last key retrieved
conn.commit();
私は何が間違っているのですか?
編集:埋め込みモードでH2(http://www.h2database.com/html/main.html)データベースを使用していることに言及しなかったことをお詫びします。