Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Il modo più rapido per elencare tutti i database in SQL Server utilizzando T-SQL

Se usi SQL Server tramite un'interfaccia a riga di comando, probabilmente non vedrai un elenco permanente di database come faresti normalmente quando usi una GUI (come SSMS o Azure Data Studio).

In questi casi, puoi usare sp_databases stored procedure di sistema per restituire un elenco di database. Questa procedura memorizzata elenca in modo specifico i database che risiedono in un'istanza di SQL Server o sono accessibili tramite un gateway di database.

Questo è probabilmente il modo più rapido e semplice per elencare tutti i database utilizzando T-SQL. Puoi semplicemente digitare sp_databases per un elenco di database, o per essere più espliciti, EXEC sp_databases .

Sintassi

La sintassi è questa:

sp_databases

Questo è tutto ciò che c'è. Nessun argomento è richiesto o accettato.

Esempio

Ecco un esempio di utilizzo.

EXEC sp_databases;

Ecco il risultato che ottengo in uno dei miei ambienti di test:

+--------------------+-----------------+-----------+
| 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      |
+--------------------+-----------------+-----------+

E se è troppo da digitare, eccolo senza EXEC :

sp_databases

Ciò restituisce gli stessi risultati.

Banche dati su un server collegato

Se hai bisogno di ottenere un elenco di database da un server collegato, usa sp_catalogs passando il nome del server collegato.

Per ulteriori informazioni ed esempi, vedere Elenca tutti i database da un server collegato in SQL Server.