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

Hurtigste måde at liste alle databaser i SQL Server ved hjælp af T-SQL

Hvis du bruger SQL Server via en kommandolinjegrænseflade, ser du sandsynligvis ikke en vedvarende liste over databaser, som du normalt ville gøre, når du bruger en GUI (såsom SSMS eller Azure Data Studio).

I sådanne tilfælde kan du bruge sp_databases systemlagret procedure for at returnere en liste over databaser. Denne lagrede procedure lister specifikt databaser, der enten findes i en forekomst af SQL Server eller er tilgængelige via en databasegateway.

Dette er sandsynligvis den hurtigste og nemmeste måde at liste alle databaser ved hjælp af T-SQL. Du kan blot skrive sp_databases for en liste over databaser, eller for at være mere eksplicit, EXEC sp_databases .

Syntaks

Syntaksen ser sådan ud:

sp_databases

Det er alt, der er. Ingen argumenter er påkrævet eller accepteret.

Eksempel

Her er et eksempel på brug.

EXEC sp_databases;

Her er resultatet, jeg får i et af mine testmiljøer:

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

Og hvis det er for meget at skrive, er det her uden EXEC :

sp_databases

Det giver de samme resultater.

Databaser på en sammenkædet server

Hvis du har brug for at få en liste over databaser fra en linket server, skal du bruge sp_catalogs mens du sender navnet på den tilknyttede server.

Se Liste over alle databaser fra en sammenkædet server i SQL Server for mere information og eksempler.


  1. Forskellen mellem CTE og SubQuery?

  2. Access 2021 For Dummies Cheat Sheet

  3. Sådan aktiveres Change Data Capture (CDC) på en database i SQL Server - SQL Server Tutorial

  4. Dvale annotering for PostgreSQL seriel type