const char * sqlite3_filename_database(const char *); const char * sqlite3_filename_journal(const char *); const char * sqlite3_filename_wal(const char *);
这些例程可用于自定义VFS实现,以便在主数据库文件,日志文件和WAL文件之间转换文件名。
如果F是SQLite内核传递到VFS的sqlite数据库文件,日志文件或WAL文件的名称,则sqlite3_filename_database(F)返回相应数据库文件的名称。
如果F是SQLite内核传递到VFS的sqlite数据库文件,日志文件或WAL文件的名称,或者F是从sqlite3_db_filename()获得的数据库文件名,则sqlite3_filename_journal(F)返回相应名称。回滚日志文件。
如果F是SQLite内核传递到VFS的sqlite数据库文件,日志文件或WAL文件的名称,或者F是从sqlite3_db_filename()获得的数据库文件名,则sqlite3_filename_wal(F)返回以下名称:相应的WAL文件。
在上述所有情况下,如果F不是从SQLite核心传递到VFS的数据库,日志或WAL文件名,并且F不是sqlite3_db_filename()的返回值,则结果是不确定的,可能是内存访问冲突。