public String executeUpdateTransaction(String[] queries) { con = this.connect(); Statement st = null; int i = 0; String currentQuery = ""; String result = "ok"; try { con.setAutoCommit(false); for (i = 0; i < queries.length; i++) { st = con.createStatement(); currentQuery = queries[i]; st.executeUpdate(currentQuery); System.out.println(currentQuery + "\nè stata aggiunta alla transazione"); } } catch (SQLException e) { System.out.println(currentQuery + "\nha causato l'errore " + e); result = e + ""; } if (result.equals("ok")) { try { con.commit(); } catch (SQLException e) { System.out.println("Si è verificato un errore in fase di commit:\n" + e); } } else { try { // con.rollback(); throw new SQLException(); } catch (SQLException e) { System.out.println("Si è verificato un errore in fase di rollback:\n" + e); } } try { con.setAutoCommit(true); } catch (SQLException e) { System.out.println("Si è verificato un errore in fase di autoCommit:\n" + e); } try { st.close(); con.close(); } catch (SQLException e) { } return result; }