Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在SQLite中使用SELECT命令列出连接的数据库_C#_Sqlite_System.data.sqlite - Fatal编程技术网

C# 在SQLite中使用SELECT命令列出连接的数据库

C# 在SQLite中使用SELECT命令列出连接的数据库,c#,sqlite,system.data.sqlite,C#,Sqlite,System.data.sqlite,是否有一个SELECT命令可以列出所有连接的数据库,类似于sqlite3中可用的.database命令?我知道SELECT语句不能执行此操作。尽管您可能希望在主数据库中查找,但此数据可能存储在主数据库中。然而,有一个解决办法。如果执行以下语句,它将返回为当前连接附加的数据库: PRAGMA database_list; 第一行始终是主数据库,第二行始终是临时数据库。任何进一步的数据库都在前两个之后。您可以对数据库运行此语句,方法与从c或其他类似语言的代码中运行SELECT语句相同 这里有一个很

是否有一个SELECT命令可以列出所有连接的数据库,类似于sqlite3中可用的.database命令?

我知道SELECT语句不能执行此操作。尽管您可能希望在主数据库中查找,但此数据可能存储在主数据库中。然而,有一个解决办法。如果执行以下语句,它将返回为当前连接附加的数据库:

PRAGMA database_list;
第一行始终是主数据库,第二行始终是临时数据库。任何进一步的数据库都在前两个之后。您可以对数据库运行此语句,方法与从c或其他类似语言的代码中运行SELECT语句相同

这里有一个很好的参考:


祝你好运

被接受的答案在发布时是正确的,但在SQLite 3.16.0和更高版本中,大多数无副作用的pragmas也可以通过所谓的方式访问

这意味着你可以写:

sqlite> .headers on
sqlite> select * from pragma_database_list;
seq|name|file
0|main|
2|a|D:\a.sqlite
3|b|D:\b.sqlite
4|c|D:\c.sqlite
上的.headers是完全可选的,但非常有用,因为这些pragma函数返回的列名没有记录在任何地方

但要注意,它们未被记录的部分原因是“此功能是实验性的,可能会发生变化”