Per chiarimenti: So che è la cosa giusta creare il PreparedStatement
fuori dal ciclo. Ho fatto questa domanda solo per curiosità.Creazione di una istruzione preparata all'interno di un ciclo
Supponiamo che Sto creando un PreparedStatement
all'interno di un ciclo con sempre la stessa query SQL.
final String sql = "INSERT INTO ...";
while (condition) {
...
PreparedStatement statement = connection.prepareStatement(sql);
// Fill values of the prepared statement
// Execute statement
...
}
È questo inutile dal momento che l'oggetto PreparedStatement
viene sempre creato di nuovo? Oppure il database sottostante riconosce che è sempre la stessa query SQL con cui viene creato lo PreparedStatement
e lo riutilizza?
Perché stai creando t lui 'PreparedStatement' all'interno del ciclo? Metti la creazione fuori dal ciclo e riutilizzala nel ciclo. – Jesper
Il punto di una dichiarazione preparata è prepararlo una volta e usarlo più volte. L'implementazione effettiva può essere a carico del driver, ma è necessario verificare le specifiche per verificare se esistono regole effettive in merito. –
@Jesper So che è meglio crearlo dal loop. Ho appena fatto questa domanda per curiosità. :-) –