Good afternoon, all --

Just wanted to ask everyone if something I'm seeing in my application is expected behavior. I'm creating an app that imports one SQLITE database into another, and I'm performing insert statements with QSqlQuery and bind variables into the destination DB. Unexpectedly, without issuing a db.commit command after I execute the insert statement, data is actually getting committed to the DB. I tried to issue a rollback following my query.exec command but the transaction was not active so no rollback occurred, and when I checked the database, the data had been committed.

However, if I issue a db.transaction() command before my query.exec I *am* able to execute the commit and rollback commands successfully. I guess what I'm seeing is that without the db.transaction() command the default behavior is to automatically commit the data, but that was wholly unexpected. I really could not find any answers out in the cyberspher, so I'm just wondering if what I'm seeing is by design. SQLITE supports transactions so I didn't expect to have had to issue the db.transaction() command - not that that's any issue whatsoever, but I am curious.

Thanks in advance!

Kodi