我有一段代码应该返回我机器上安装的所有 SQL Server 实例。它看起来像这样:
DataTable dtLocalServers = SmoApplication.EnumAvailableSqlServers(true);
foreach (DataRow dServer in dtLocalServers.Rows)
{
Console.WriteLine(dServer.ToString());
}
它可以工作、编译和运行。但是,生成的数据表不是很有用。它看起来像这样:
Name | Server | Instance | IsClustered | Version | IsLocal
IAN-PC | IAN-PC | | True | | True
问题是虽然这会返回一个结果,但这并没有给我任何关于服务器的信息。特别是,我正在尝试获取版本(SQL Server 2008 Express R2 或 SQL Server Express 2012),我假设它应该在“版本”字段中。我知道我有两个副本在本地运行以进行此测试。
我还能做些什么来获得更好的结果吗?
编辑: IAN-PC 是我电脑的名称。我的电脑上有两个正在运行的 SQL Server 实例,IANSQLEXP (SQL Server 2008 Express R2) 和 SQLEXPRESS (SQL Server Express 2012)。在 SQL Server 配置管理器中,还有两个未运行的代理和一个未运行的 SQL Server Browser。