Como aclaración: sé que es lo correcto para crear el PreparedStatement
fuera del bucle. He hecho esta pregunta solo por curiosidad.Creación de una declaración preparada dentro de un bucle
Supongamos que estoy creando un PreparedStatement
dentro de un bucle con siempre la misma consulta SQL.
final String sql = "INSERT INTO ...";
while (condition) {
...
PreparedStatement statement = connection.prepareStatement(sql);
// Fill values of the prepared statement
// Execute statement
...
}
¿Es esta inútil ya que el objeto PreparedStatement
siempre se crea de nuevo? O reconoce la base de datos subyacente que siempre es la misma consulta SQL con el que se crea y reutiliza el PreparedStatement
?
Por qué estas creando t él 'PreparedStatement' dentro del ciclo? Coloque la creación fuera del ciclo y vuelva a utilizarla en el ciclo. – Jesper
El objetivo de una declaración preparada es prepararla una vez y usarla varias veces. La implementación real puede depender del controlador, pero deberá verificar las especificaciones para ver si existen reglas reales al respecto. –
@Jesper Sé que es mejor crearlo fuera del circuito. Acabo de hacer esta pregunta por curiosidad. :-) –