NAME
sqlite3session_create —
Create A New
Session Object
SYNOPSIS
int
sqlite3session_create(
sqlite3 *db,
const char *zDb,
sqlite3_session
**ppSession );
DESCRIPTION
Create a new session object attached to database handle db. If successful, a
pointer to the new object is written to *ppSession and SQLITE_OK is returned.
If an error occurs, *ppSession is set to NULL and an SQLite error code (e.g.
SQLITE_NOMEM) is returned.
It is possible to create multiple session objects attached to a single database
handle.
Session objects created using this function should be deleted using the
sqlite3session_delete() function before the database handle that they are
attached to is itself closed. If the database handle is closed before the
session object is deleted, then the results of calling any session module
function, including sqlite3session_delete() on the session object are
undefined.
Because the session module uses the sqlite3_preupdate_hook() API, it is not
possible for an application to register a pre-update hook on a database handle
that has one or more session objects attached. Nor is it possible to create a
session object attached to a database handle for which a pre-update hook is
already defined. The results of attempting either of these things are
undefined.
The session object will be used to create changesets for tables in database zDb,
where zDb is either "main", or "temp", or the name of an
attached database. It is not an error if database zDb is not attached to the
database when the session object is created.
SEE ALSO
sqlite3_preupdate_hook(3),
sqlite3session_delete(3)