SQL Server查询来查找所有当前的数据库名称

我需要一个SQL查询来查找现有数据库的名称。

这里是一个在一个Sql引擎中显示所有数据库的查询

Select * from Sys.Databases 
 SELECT name FROM sys.databases 

您只会看到您有权查看的数据库。

另一个添加到混合:

 EXEC sp_databases 

我不推荐这种方法…但是如果你想变得古怪和奇怪:

 EXEC sp_MSForEachDB 'SELECT ''?'' AS DatabaseName' 

要么

 EXEC sp_MSForEachDB 'Print ''?''' 

你也可以使用这些方法:

 EXEC sp_helpdb 

和:

 SELECT name FROM sys.sysdatabases 

推荐阅读:

不要忘了看看sysdatabases VS sys.sysdatabases

类似的线程 。

对于“ sys.databases ”不起作用的用户,您也可以使用它;

 SELECT DISTINCT TABLE_SCHEMA from INFORMATION_SCHEMA.COLUMNS 

这个论坛也build议:

 SELECT CATALOG_NAME AS DataBaseName FROM INFORMATION_SCHEMA.SCHEMATA