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

时间:2009-05-16 21:50:11

标签: sql-server

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

8 个答案:

答案 0 :(得分:68)

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

Select * from Sys.Databases

答案 1 :(得分:47)

SELECT name  
FROM sys.databases
  

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

答案 2 :(得分:9)

添加到混音中的另一个:

EXEC sp_databases

答案 3 :(得分:5)

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

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

EXEC sp_MSForEachDB 'Print ''?'''

答案 4 :(得分:4)

您也可以使用以下方式:

EXEC sp_helpdb

SELECT name FROM sys.sysdatabases

推荐阅读:

不要忘记查看sysdatabases VS sys.sysdatabases

类似thread

答案 5 :(得分:2)

This forum还建议:

SELECT CATALOG_NAME AS DataBaseName
FROM INFORMATION_SCHEMA.SCHEMATA

答案 6 :(得分:0)

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

SELECT DISTINCT TABLE_SCHEMA from INFORMATION_SCHEMA.COLUMNS

答案 7 :(得分:0)

SELECT datname FROM pg_database WHERE datistemplate = false

#for postgres