Small. Fast. Reliable.
Choose any three.

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)是SQLite用于与基础操作系统进行交互的sqlite3_vfs对象。大多数SQLite构建都带有适合主机的单个默认VFS。可以注册新的VFS,而可以注销现有的VFS。提供以下接口。

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

新的VFS使用sqlite3_vfs_register()注册。如果设置了makeDflt标志,则每个新的VFS都将成为默认的VFS。同一VFS可以多次注册而不会受伤。要将现有VFS设置为默认VFS,请在设置了makeDflt标志的情况下再次注册它。如果注册了两个具有相同名称的不同VFS,则该行为未定义。如果使用名称NULL或空字符串注册了VFS,则该行为是不确定的。

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

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