SQLITE_CHANGESETAPPLY_NOSAVEPOINT,
SQLITE_CHANGESETAPPLY_INVERT,
SQLITE_CHANGESETAPPLY_IGNORENOOP,
SQLITE_CHANGESETAPPLY_FKNOACTION —
flags for sqlite3changeset_apply_v2
#include
<sqlite3.h>
#define SQLITE_CHANGESETAPPLY_NOSAVEPOINT
#define SQLITE_CHANGESETAPPLY_INVERT
#define SQLITE_CHANGESETAPPLY_IGNORENOOP
#define SQLITE_CHANGESETAPPLY_FKNOACTION
The following flags may passed via the 9th parameter to
sqlite3changeset_apply_v2 and sqlite3changeset_apply_v2_strm:
- SQLITE_CHANGESETAPPLY_NOSAVEPOINT
- Usually, the sessions module encloses all operations performed by a single
call to apply_v2() or apply_v2_strm() in a SAVEPOINT. The SAVEPOINT is
committed if the changeset or patchset is successfully applied, or rolled
back if an error occurs. Specifying this flag causes the sessions module
to omit this savepoint. In this case, if the caller has an open
transaction or savepoint when apply_v2() is called, it may revert the
partially applied changeset by rolling it back.
- SQLITE_CHANGESETAPPLY_INVERT
- Invert the changeset before applying it. This is equivalent to inverting a
changeset using sqlite3changeset_invert() before applying it. It is an
error to specify this flag with a patchset.
- SQLITE_CHANGESETAPPLY_IGNORENOOP
- Do not invoke the conflict handler callback for any changes that would not
actually modify the database even if they were applied. Specifically, this
means that the conflict handler is not invoked for:
- a delete change if the row being deleted cannot be found,
- an update change if the modified fields are already set to their new
values in the conflicting row, or
- an insert change if all fields of the conflicting row match the row
being inserted.
- SQLITE_CHANGESETAPPLY_FKNOACTION
- If this flag it set, then all foreign key constraints in the target
database behave as if they were declared with "ON UPDATE NO ACTION ON
DELETE NO ACTION", even if they are actually CASCADE, RESTRICT, SET
NULL or SET DEFAULT.
These declarations were extracted from the interface documentation
at line 12211.
#define SQLITE_CHANGESETAPPLY_NOSAVEPOINT 0x0001
#define SQLITE_CHANGESETAPPLY_INVERT 0x0002
#define SQLITE_CHANGESETAPPLY_IGNORENOOP 0x0004
#define SQLITE_CHANGESETAPPLY_FKNOACTION 0x0008