Я хочу вставить много строк в таблицу, которая автоматически генерирует ключи. JDBC не гарантирует, что получение сгенерированных ключей будет работать при пакетном обновлении.
It is implementation-defined as to whether getGeneratedKeys will return
generated values after invoking the executeBatch method.
(спецификация JDBC 4.0 2006, стр. 135).
У меня есть два варианта. Вставьте каждую строку отдельно и получите ключ. Или выполните пакетную вставку, а затем запросите ключи.
Чтобы избежать обхода при запросе нескольких клавиш, я мог бы использовать этот подход здесь . Имея, например, 5 подготовленных заявлений с разными размерами. А затем разбить мой «пакетный запрос» на наименьшее возможное утверждение.
Какой метод быстрее?