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 选项编译时可用。