*** 16,21 **** --- 16,26 ---- So, what is the most natural way to determine, that Open() created new database instead of opening the existing one?{linebreak} A) Use some system API funtion like IsFileExists(DB_filename) before calling sqlite_open(DB_filename) + {linebreak} + A) or, use the "user_version" pragma. Right after calling open(), do "pragma user_version". If it returns + "0", then assume that this is a new file -- create your tables and do "pragma user_version=1" to mark + that you've created your tables in this db. The next time you do "pragma user_version", it will return 1, + signifying that you've previously set up this db. ------- Q) Is it possible to let the programmer choose - commit or rollback the transaction that was begun with BEGIN and some INSERTS/UPDATES, but was not finished due to system hangup or power failure,