Name Of The Folder Holding Database Files
持有数据库文件的文件夹的名称
SQLITE_EXTERN char *sqlite3_data_directory;
如果这个全局变量指向一个文件夹名称(又名目录)的字符串,那么所有使用相对路径名指定的,使用内置的 windows VFS 时由 SQLite 创建或访问的数据库文件将被假定为与该目录相关。如果这个变量是一个 NULL 指针,那么 SQLite 就认为用相对路径名指定的所有数据库文件都与该进程的当前目录相关。只有 Windows VFS 使用这个全局变量; 它被 unix VFS 忽略。
数据库连接打开时更改此变量的值可能会导致数据库损坏。
一次在多个线程中读取或修改此变量是不安全的。如果在单独的线程中同时使用数据库连接,则读取或修改此变量是不安全的。这个变量的目的是作为进程初始化的一部分,并且在任何 SQLite接口例程被调用之前被设置一次,并且这个变量此后保持不变。
data_store_directory 编译指示可以修改这个变量并使其指向从 sqlite3_malloc 获取的内存。此外,data_store_directory 编译指示始终假定此变量指向的任何字符串都保存在从sqlite3_malloc 获取的内存中,并且该编译指示可能会尝试使用 sqlite3_free 释放该内存。因此,如果直接修改此变量,则应将其设置为 NULL 或指向从 sqlite3_malloc 获取的内存,否则应避免使用 data_store_directory 编译指示。