JDBC transaction, execution order of sql statements

I have following JDBC code:

Connection conn = connectUserDataSource();
        // Setting auto commit to false to execute all queries as part of transaction
        PreparedStatement deletePreparedStatement = null;
        PreparedStatement insertPreparedStatement = null;
            deletePreparedStatement = conn.prepareStatement(sqlDelete);
            deletePreparedStatement.setInt(1, someId);

            insertPreparedStatement = conn.prepareStatement(sqlInsert);
            for(SomeObject obj : objects)
                insertPreparedStatement.setInt(1, obj.getId());

            // committing transaction
            transactionComplete = true;

And I would like 2 prepared statements to be part of one JDBC transaction. I am wondering whether order at which they are created will be the execution order of SQL statements: delete first and inserts – after.


They are executed from top to bottom, so in the order you did it, the deletes will execute first and the insert after them.

Leave a Reply

Your email address will not be published. Required fields are marked *