Small. Fast. Reliable.
Choose any three.

SQLite C Interface

Test To See If The Database Is In Auto-Commit Mode

int sqlite3_get_autocommit(sqlite3*);

The sqlite3_get_autocommit() interfaces returns non-zero or zero if the given database connection is or is not in autocommit mode, respectively. Autocommit mode is on by default. Autocommit mode is disabled by a BEGIN statement. Autocommit mode is reenabled by a COMMIT or ROLLBACK.

If certain kinds of errors occur on a statement within a multi-statement transactions (errors including SQLITE_FULL, SQLITE_IOERR, SQLITE_NOMEM, SQLITE_BUSY, and SQLITE_INTERRUPT) then the transaction might be rolled back automatically. The only way to find out if SQLite automatically rolled back the transaction after an error is to use this function.

Invariants:

F12931 The sqlite3_get_autocommit() interface returns non-zero or zero if the given database connection is or is not in autocommit mode, respectively.
F12932 Autocommit mode is on by default.
F12933 Autocommit mode is disabled by a successful BEGIN statement.
F12934 Autocommit mode is enabled by a successful COMMIT or ROLLBACK statement.

Limitations:

U12936 If another thread changes the autocommit status of the database connection while this routine is running, then the return value is undefined.

See also lists of Objects, Constants, and Functions.


This page last modified 2008/01/31 20:37:13 UTC