2011-10-29 61 views
3

在C#上工作,在我的一個應用程序中,我需要獲取SQL Server名稱。在網絡中,我有SQL Server 2000,2005,2008。對於我的應用程序,我想獲取服務器名稱。如何獲得沒有連接字符串的SQL Server名稱

private string strConnection = @"Data Source=xxx;Initial Catalog=xxx;Integrated Security=True"; 

SqlConnection objConnection = new SqlConnection(strConnection); 
objConnection.Open(); 
SqlCommand objCommand = new SqlCommand(「xxxxxxx」); 
objCommand.ExecuteNonQuery(); 
objConnection.Close(); 

如果我知道strConnection那麼我可以使用上面的語法。但我不知道服務器名稱。首先,我需要知道服務器名稱。我需要幫助來獲取服務器名稱。

回答

5

有相當多的選擇如何找到那些代碼 - 看到:

還有很多方法可以找到你的SQL Server--這些選項是否適合你?

+0

+1 ADO.NET實用程序類非常好。我正在考慮nmaping,而不是。 :) – Icarus

0

您可以使用Use SmoApplication.EnumAvailableSqlServers方法來枚舉SQL Server的可用實例的列表。

+0

Works - 但它需要SMO才能存在,這意味着a)要麼使用SMO安裝SQL Server客戶端工具,要麼b)分別安裝SMO。 –

+0

是絕對正確的 –