sqlite.h


Objetos de sistema de fichero virtual

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

Un sistema de ficheros virtual (VFS) es un objeto sqlite3_vfs que usa SQLite para interactual con el sistema operativo subyacente. La mayoría de las construcciones SQLite vienen con un VFS por defecto que es apropiado para el equipo anfitrión. Los nuevos VFS pueden ser registrados y los existentes desregistrados. Se proporcionan los siguientes interfaces.

La función sqlite3_vfs_find() devuelve un puntero a un VFS dado su nombre. Los nombres son sensibles a mayúsculas y minúsculas. Son cadenas UTF-8 terminadas en cero. Si no hay coincidencia, se retorna un puntero null. Si zVfsName es NULL se devuelve el VFS por defecto.

Los nuevos VFS se registran con sqlite3_vfs_register(). Cada nuevo VFS se convierte en el VFS por defecto si la bandera makeDflt está activa. El mismo VFS puede ser registrado varias veces sin problemas. Para hacer que un VFS existente sea el VFS por defecto, registrarlo de nuevo con la bandera makeDflt activa. Si se registran dos VFS diferentes con el mismo nombre, el comportamiento es indefinido. Si un VFS se registra con un nombre que sea NULL o una cadena vacía, el comportamiento es indefinido.

Para desregistrar un VFS usar la función sqlite3_vfs_unregister(). Si el VFS por defecto es desregistrado, se elige otro VFS como el VFS por defecto. La elección del nuevo VFS es arbitraria.