Let's say I start a transaction with either BEGIN IMMEDIATE or BEGIN EXCLUSIVE, by successfully going through the sqlite3_prepare(), sqlite3_step(), and sqlite3_finalize() process.
1. I then prepare a SELECT statement with sqlite3_prepare(). Since the BEGIN statement did not give me a SQLITE_SCHEMA error, am I correct in believing that now that I'm in a transaction, the schema CAN NOT change, and I will not get back a schema changed error on this sqlite3_prepare("SELECT ...")? 2. Similarly, after the SELECT statement has been prepared, I expect that I will not get back a schema change error on any of the sqlite3_step() calls retrieving the data from the SELECT, nor on the sqlite3_finalize() for the SELECT, nor from any of the three functions on the subsequent COMMIT. Correct? Thanks, Derrell