小巧、快速、可靠。
三者选其二。

SQLite C 接口

虚拟文件系统对象

sqlite3_vfs *sqlite3_vfs_find(const char *zVfsName);
int sqlite3_vfs_register(sqlite3_vfs*, int makeDflt);
int sqlite3_vfs_unregister(sqlite3_vfs*);

虚拟文件系统 (VFS) 是一个 sqlite3_vfs 对象,SQLite 使用它与底层操作系统进行交互。大多数 SQLite 版本都带有一个适合主机计算机的默认 VFS。可以注册新的 VFS 并注销现有的 VFS。以下提供了接口。

sqlite3_vfs_find() 接口根据名称返回指向 VFS 的指针。名称区分大小写。名称是零结尾的 UTF-8 字符串。如果没有匹配,则返回 NULL 指针。如果 zVfsName 为 NULL,则返回默认 VFS。

使用 sqlite3_vfs_register() 注册新的 VFS。如果设置了 makeDflt 标志,则每个新 VFS 都会成为默认 VFS。相同的 VFS 可以注册多次,不会造成伤害。要将现有 VFS 设为默认 VFS,请再次注册它,并将 makeDflt 标志设置为 true。如果两个名称相同的不同 VFS 被注册,则行为未定义。如果 VFS 使用 NULL 或空字符串注册,则行为未定义。

使用 sqlite3_vfs_unregister() 接口注销 VFS。如果注销了默认 VFS,则会选择另一个 VFS 作为默认 VFS。新 VFS 的选择是任意的。

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