SQLite 获取已附加数据库的名称

16

如何在SQLite中获取已附加数据库的名称?

我已经尝试过查看:

SELECT name FROM sqlite_master

但似乎没有关于所附数据库的任何信息。

我使用以下命令附加数据库:

ATTACH DATABASE <fileName> AS <DBName>

能够检索附加的文件名或数据库名称列表将是很好的。

我想验证是否已正确附加数据库,而不事先知道其模式。

3个回答

35

你在寻找这个吗?

PRAGMA database_list;

PRAGMA database_list;
此命令类似于一个查询,返回当前数据库连接所附加的每个数据库的一行记录。第二列对于主数据库文件为“main”,对于用于存储TEMP对象的数据库文件为“temp”,对于其他数据库文件为ATTACHed数据库的名称。第三列是数据库文件本身的名称,如果该数据库没有关联到文件,则为空字符串。


10

这些点命令(如.database.open xyz等)不是专有于SQLite工具的命令行界面吗? - Anse

2
以下查询可以获取已连接数据库的名称:
SELECT * FROM pragma_database_list;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接