鉴于SQL Server的一个实例,枚举数据库的最佳方法是什么?
答案 0 :(得分:6)
在SQL Server 2000 +中:
select * from sysdatabases
在SQL Server 2005 +中:
select * from sys.databases
差异很微妙,几乎不值得一提这样的单线。但是根据您将要访问系统目录的程度,您可以从本文中获得一些用处:
Querying the SQL Server System Catalog
您也可以在没有参数的情况下执行sp_helpdb
以获取有关所有数据库的基本信息。 (传入数据库名称作为参数以获取有关该数据库的更多详细信息)。
答案 1 :(得分:4)
试试这个:
SELECT [name] FROM sys.sysdatabases
您也可以从exec sp_databases;
这些命令可以在SQL 2000 +中使用。
答案 2 :(得分:0)
EXECUTE master.sys.sp_MSforeachdb 'USE [?]; EXEC sp_spaceused'