小巧。快速。可靠。
三选一。

SQLite C 接口

比较两个快照句柄的年龄。

int sqlite3_snapshot_cmp(
  sqlite3_snapshot *p1,
  sqlite3_snapshot *p2
);

sqlite3_snapshot_cmp(P1, P2) 接口用于比较两个有效快照句柄的年龄。

如果两个快照句柄不与同一个数据库文件关联,则比较结果未定义。

此外,比较结果仅在自上次删除 wal 文件后通过调用 sqlite3_snapshot_get() 获取的两个快照句柄才有效。当数据库更改回回滚模式或数据库客户端数量降至零时,wal 文件将被删除。如果任一快照句柄是在上次删除 wal 文件之前获取的,则此函数返回的值未定义。

否则,如果 P1 指向比 P2 更早的快照,则此 API 返回一个负值;如果两个句柄指向同一个数据库快照,则返回零;如果 P1 指向比 P2 更新的快照,则返回一个正值。

此接口仅在 SQLite 使用 SQLITE_ENABLE_SNAPSHOT 选项编译时可用。

另请参见 对象常量函数 列表。