Ако използвате SQL Server чрез интерфейс на командния ред, вероятно не виждате постоянен списък с бази данни, както обикновено, докато използвате GUI (като SSMS или Azure Data Studio).
В такива случаи можете да използвате sp_databases
системна съхранена процедура за връщане на списък с бази данни. Тази съхранена процедура изброява конкретно бази данни, които или се намират в екземпляр на SQL Server, или са достъпни през шлюз на база данни.
Това е може би най-бързият и лесен начин за изброяване на всички бази данни с помощта на T-SQL. Можете просто да въведете sp_databases
за списък с бази данни или за да бъдем по-ясни, EXEC sp_databases
.
Синтаксис
Синтаксисът е така:
sp_databases
Това е всичко, което има. Не се изискват или приемат аргументи.
Пример
Ето пример за употреба.
EXEC sp_databases;
Ето резултата, който получавам в една от моите тестови среди:
+--------------------+-----------------+-----------+ | DATABASE_NAME | DATABASE_SIZE | REMARKS | |--------------------+-----------------+-----------| | master | 6592 | NULL | | model | 16384 | NULL | | msdb | 15872 | NULL | | Music | 16384 | NULL | | MyDB | 16384 | NULL | | tempdb | 24576 | NULL | | Test | 16384 | NULL | | WideWorldImporters | 3248128 | NULL | | world | 16384 | NULL | +--------------------+-----------------+-----------+
И ако това е твърде много за въвеждане, ето го без EXEC
:
sp_databases
Това връща същите резултати.
Бази данни на свързан сървър
Ако трябва да получите списък с бази данни от свързан сървър, използвайте sp_catalogs
докато предавате името на свързания сървър.
Вижте списък на всички бази данни от свързан сървър в SQL Server за повече информация и примери.