2010-03-05 143 views
2

我正在添加一個基於服務的數據庫,但我收到了以下消息:這個SQL數據庫錯誤在C#中意味着什麼?

與SQL服務器建立連接時發生網絡相關或特定於實例的錯誤。服務器未找到或無法訪問。驗證實例名稱是否正確,並將SQL Server配置爲允許遠程連接。 (提供商:SQL網絡接口,錯誤:26 - 錯誤定位服務器/實例指定)

我是一個絕對的初學者,所以我不知道如何解決這個問題。我正在閱讀「O'Reilly Head First C Sharp 2007年」一書。

我在第18頁,它是要求我添加一個SQL數據庫,在那裏我得到該錯誤消息。

我是一名初學者程序員,所以我不知道任何技術。我什麼都不知道。

+0

可能你發佈你的配置文件的相關部分。 – kd7 2010-03-05 00:36:01

+3

您是否嘗試閱讀錯誤消息並按照其中的說明進行操作? – erikkallen 2010-03-05 00:45:30

+0

Ah erikkallen,這個RTFM不是這個問題的答案。 :O) – AMissico 2010-03-05 00:50:20

回答

5

除了不允許遠程連接,也有這個問題的其他原因引起的少數:

  1. 正在使用的協議(例如TCP/IP)未啓用。進入SQL Server配置管理器並確保您使用的協議已啓用。例如。如果您嘗試使用TCP/IP,則必須啓用TCP/IP。

  2. 防火牆,比如在SQL Server框本身,可能會阻止流量。如果該服務器上的Windows防火牆已啓用,則需要爲SQL Server實例使用的端口(通常爲1433)添加例外。

  3. SQL Server實例正在偵聽的端口(假設TCP/IP連接)不是1433.進入SQL Server配置管理器,進入TCP/IP協議,進入IP Addresses選項卡並檢查港口。

有時並不清楚你實際上是使用TCP/IP協議的連接,如果您使用的是服務器的名稱,而不是特定的IP。在連接字符串中,您可以通過包括Network Library = DBMSSOCN;像這樣:

<add name="MyConnectionName" 
    providerName="System.Data.SqlClient" 
    connectionString="Data Source=[Your Server Name];Network Library=DBMSSOCN;Initial Catalog=[Database Name];..." 
    /> 
0

這是當一個SQL服務器的連接不起作用默認的錯誤,這可能意味着服務器宕機,網絡沒有路由,配置是錯誤的,等