2011-05-20 64 views

回答

6

在SQL Server 2000+:

select * from sysdatabases

在SQL Server 2005+:

select * from sys.databases

的差別是細微的,勉強值得一提的一個班輪這樣。但是,這取決於你要多少可以訪問系統目錄下,你可能會得到一些使用了這篇文章:

Querying the SQL Server System Catalog

你也可以執行sp_helpdb沒有參數,以獲取有關所有數據庫的基本信息。 (傳入數據庫名稱作爲參數以獲取有關該數據庫的更多詳細信息)。

+0

謝謝,這很有用! – user380719 2011-05-20 21:34:02

+1

請注意,在SQL 2000中沒有'sys'模式,只是'select * from sysdatabses' – 2011-05-20 22:25:29

+0

@Remus謝謝,因爲我需要2000兼容的語法,所以猜測它已經太長了! – ajk 2011-05-20 22:29:34

4

試試這個:

SELECT [name] FROM sys.sysdatabases 

你也可以從exec sp_databases;

得到這個這些命令將SQL 2000+工作。

0
EXECUTE master.sys.sp_MSforeachdb 'USE [?]; EXEC sp_spaceused'