会话模块 C 接口
sqlite3changeset_apply_v2 的标志
#define SQLITE_CHANGESETAPPLY_NOSAVEPOINT 0x0001 #define SQLITE_CHANGESETAPPLY_INVERT 0x0002
以下标志可以通过第 9 个参数传递给 sqlite3changeset_apply_v2和sqlite3changeset_apply_v2_strm:
- SQLITE_CHANGESETAPPLY_NOSAVEPOINT
- 通常,会话模块将通过一次调用 apply_v2() 或 apply_v2_strm() 执行的所有操作包含在SAVEPOINT中。如果成功应用变更集或补丁集,则提交 SAVEPOINT,如果发生错误,则回滚。指定此标志会导致会话模块忽略此保存点。在这种情况下,如果调用者在调用 apply_v2() 时有一个打开的事务或保存点,它可能会通过回滚来恢复部分应用的变更集。
- SQLITE_CHANGESETAPPLY_INVERT
- 在应用之前反转变更集。这相当于在应用之前使用 sqlite3changeset_invert() 反转变更集。用补丁集指定这个标志是错误的。