Создание подготовленного оператора внутри цикла

Для уточнения:Я знаю, что правильно создать PreparedStatementвне цикла. Я задал этот вопрос просто из любопытства.


Предположим, что я создаюPreparedStatementвнутри цикла с всегда одним и тем же SQL-запросом.

final String sql = "INSERT INTO...";
while (condition) {
  ...
   PreparedStatement statement = connection.prepareStatement(sql);
   // Fill values of the prepared statement
   // Execute statement
  ...
}

Это бесполезно, поскольку объект PreparedStatementвсегда создается заново? Или базовая база данных распознает, что это всегда один и тот же SQL-запрос, с помощью которого создается PreparedStatement, и повторно использует его?

5
задан 15 August 2012 в 15:06
поделиться