如何获取SQL Server实例上的可用数据库列表?我计划在VB.NET的组合框中列出他们的列表。


当前回答

SELECT [name] 
FROM master.dbo.sysdatabases 
WHERE dbid > 4 

工作在我们的SQL Server 2008

其他回答

因为你正在使用。net,你可以使用SQL Server管理对象

Dim server As New Microsoft.SqlServer.Management.Smo.Server("localhost")
For Each db As Database In server.Databases
    Console.WriteLine(db.Name)
Next

如果您正在寻找一个命令来列出MYSQL中的数据库,那么只需使用下面的命令。登录sql server后,

显示数据库;

SELECT [name] 
FROM master.dbo.sysdatabases 
WHERE dbid > 4 

工作在我们的SQL Server 2008

我使用下面的SQL Server Management Objects代码来获得一个数据库列表,这些数据库既不是系统数据库,也不是快照。

using Microsoft.SqlServer.Management.Smo;

public static string[] GetDatabaseNames( string serverName )
{
   var server = new Server( serverName );
   return ( from Database database in server.Databases 
            where !database.IsSystemObject && !database.IsDatabaseSnapshot
            select database.Name 
          ).ToArray();
}

在SQL Server 7中,dbid 1 ~ dbid 4为系统dbs。