Please update to SQLite 3.12.2 or newer. Visit Release History Of SQLite for all the improvements and bug fixes since versions 3.9.2 and 3.8.8 (used on iOS).
Works well for me.[/quote]
It’s about consistency and completeness. If there are Commit and Rollback methods, there should be a Begin method. Otherwise, drop the Commit and Rollback methods. For consistency in our code, we use SQLExecute with Begin, Commit and Rollback.
[quote=267694:@Dave S]shouldn’t that be
dbh.SQLExecute ("begin transaction")
dbh.SQLExecute ("end transaction")
[/quote]
Depends on the database. SQLite accepts the commands with or without Transaction following Begin, Commit and Rollback.
The point would be consistency across disparate database engines. Xojo should hide the details so the developer doesn’t have to remember if it’s “end transaction” or “commit” for any give db. Your code should be able to switch backends without a lot of recoding.
Please consider SQLite 3.13 as the minimum version. It has been available for about two months with no patches, which I interpret as meaning it is a solid release. Hopefully that is the case and it, or a later version, is included in the next release of Xojo.
2013r1: 23060 Database: SQLiteDatabase/REALSQLDatabase: updated to SQLite 3.7.14.1.
2013r41: 25806 Database: Updated SQLiteDatabase to use SQLite 3.7.17.
2014r2: 29171 SQLiteDatabase: Updated to SQLite version 3.8.5.
2015r1: 36218 SQLiteDatabase: Updated to SQLite 3.8.8.
2015r4: 40510 Framework » All SQLiteDatabase updated to SQLite version 3.9.2.
This means that they carefully choose the SQLite version to include in Xojo.
Of course I do not have a single information on when Xojo will update its SQLite version: a new version of SQLite will be integrated in Xojo when it will be integrated (as usual).