White Owl, а как запрашивать существование транзакции?
а...
select @@trancount ... для некоторых баз данных. К сожалению, универсально это узнать нельзя.
Значит надо добавлять явный запрос на начало второй транзакции. И использовать как-то так:
AutoTransaction transaction(ourDatabase);
QSqlQuery query(ourDatabase);
if(! query.execute("insert ..." ) ) return;
transaction.commit();
transaction.begin();
if(! query.execute("update ... ") return;