2012-05-10 35 views
2

使用下面的連接字符串我不斷收到可怕的錯誤25:SQL連接錯誤25在C#

無法連接到SQL Server,因爲連接字符串是無效

這裏是我的連接字符串:

connString = @"Data Source=\\10.23.1.3\vadtcdc3;Initial Catalog=VADTC;User Id = test;Password=test"; 

我使用VS 2010,MS SQL 2005標準版,遠程訪問,並命名管道和TCP/IP被啓用。我正在使用System.Data.SqlClient,並且我嘗試了使用和不使用@符號的連接字符串。在研究了許多幫助網站之後,我仍然沒有想出答案。

連接字符串在VB應用程序中工作,而不是在C#應用程序中。在VB應用程序中,我使用web.config文件指定用於訪問服務器的用戶名。這需要在C#中進行連接嗎?我幾乎不知所措,因爲下一步該做什麼......

+0

刪除第一個「\\」從數據源,看看如果它有幫助 – cichy

回答

0

擺脫IP地址之前的反斜槓。

僅供參考,請參閱Connection strings for SQL Server 2005

假設vadtcdc3是你的實例名,您的連接字符串應該是:

connString = @"Data Source=10.23.1.3\vadtcdc3;Initial Catalog=VADTC;User Id = test;Password=test"; 

如果您的數據庫設置爲默認實例,只需使用:

connString = @"Data Source=10.23.1.3;Initial Catalog=VADTC;User Id = test;Password=test"; 
+0

那是 - 沒有運氣。 。 。也擺脫了@符號 - 也沒有運氣。 。 。 –

+0

我假設'vadtcdc3'是你的實例名稱。你可以使用SSMS使用'10.23.1.3 \ vadtcdc3'作爲服務器名連接嗎? – RedFilter

+0

看到我上面的更新。 – RedFilter

0

是vadtcdc3名你的實例?

connString = "Server=10.23.1.3\vadtcdc3;Initial Catalog=VADTC;User Id = test;Password=test"; 
+0

是的。 。 。試圖使用IP地址,只是服務器名稱vadtcdc3,並沒有工作。 。 。令人沮喪的是它在VB中起作用。 。 。 –

+0

是10.23.1.3 vadtcdc3的IP?如果是的話,你不需要他們兩個,只有一個。嘗試Server = 10.23.1.3只有 – Diego

+0

這讓我到錯誤40 - 命名管道提供商錯誤。 。 。檢查服務器,看起來命名管道正在工作。 。 。 –

0

試試這個:

connString = "Data Source=10.23.1.3\\vadtcdc3;Initial Catalog=VADTC;User Id = test;Password=test"; 
+0

未找到服務器 - 錯誤26。 。 。 –

+0

給我們你的客戶的設置。你的客戶在哪裏?數據庫服務器位於何處?它在本地網絡中嗎?它位於WAN上嗎? –

0

您使用哪種類型的驗證?如果您使用SQL身份驗證,您必須指定的憑據是在您的字符串:

Integrated Security = false; 

因此,這將是這個樣子:

connString = "Data Source=10.23.1.3\\vadtcdc3;Initial Catalog=VADTC;Integrated Security = false;User Id = test;Password=test";