const char *sqlite3_db_name(sqlite3 *db, int N);
Интерфейс sqlite3_db_name(D,N) возвращает указатель на название схемы базы данных N по соединению с базой данных D или NULL, если N вне диапазона. Значение N = 0 означает главный файл базы данных. N = 1 является схемой "temp". Большие значения N соответствуют различным базам данных.
Местом, чтобы держать последовательность, которая возвращена sqlite3_db_name(), управляет сам SQLite. Последовательность могла бы быть освобождена любой операцией, которая изменяет схему, включая ATTACH, DETACH, вызовом sqlite3_serialize() или sqlite3_deserialize(), даже операции, которые происходят в другом потоке. Приложения, которые должны помнить долгосрочную последовательность, должны сделать свою собственную копию. Приложения, которые получают доступ к тому же самому соединению с базой данных одновременно на разных потоках, должны mutex-защитить вызовы этого API и сделать их собственную частную копию результата до освобождения mutex.