我需要一个SQL查询来查找现有数据库的名称。
答案 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