在线文档教程
Sqlite
C界面 | C Interface

Recover snapshots from a wal file

Recover snapshots from a wal file

int sqlite3_snapshot_recover(sqlite3 *db, const char *zDb

重要提示:该界面是实验性的,如有更改,恕不另行通知。

如果所有连接都从数据库文件断开连接但不执行检查点,则在下次打开数据库时,现有的wal文件将与数据库文件一起打开。此时,只有成功调用sqlite3_snapshot_open()才能打开数据库(wal文件头部的那个)的最新快照,即使wal文件可能包含客户端具有sqlite3_snapshot句柄的其他有效快照。

此函数尝试扫描与数据库句柄数据库的数据库zDb关联的wal文件,并使sqlite3_snapshot_open()的所有有效快照可用。如果已经在数据库上打开了读取事务,或者数据库不是沃尔玛模式数据库,则会出错。

如果成功则返回SQLITE_OK,否则返回SQLite错误代码。