2011-01-27 115 views
0

我的代碼如下:錯誤嘗試使用C#來連接到SQL Server

string constring = "Data Source=132.186.127.169"+ "Initial Catalog=CadPool1;" + "Integrated Security=True"; 
SqlConnection con; 
con = new SqlConnection(constring); 
con.Open(); 
string query="SELECT * from CadPoolProjectTable1"; 
SqlCommand cmd = new SqlCommand(query, con); 
cmd.ExecuteNonQuery(); 
MessageBox.Show("selected"); 
con.Close(); 

我得到的錯誤在該行con.Open();。錯誤是:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)

回答

2

連接字符串是錯誤的:

string constring = 
    "Data Source=132.186.127.169;Initial Catalog=CadPool1;Integrated Security=True"; 

您不需要字符串拼接在一起,但更重要的是,你錯過了分號「;」數據源和初始目錄設置之間。

4

您錯過了';'在連接字符串中的服務器名稱之後。

string constring = "Data Source=132.186.127.169"+ "Initial Catalog=CadPool1;" + "Integrated Security=True"; 

應該

string constring = "Data Source=132.186.127.169;"+ "Initial Catalog=CadPool1;" + "Integrated Security=True"; 

錯誤說,你的應用程序無法連接到服務器。我會做以下。

  1. 檢查服務器地址(上咋一看它看起來不錯)使用
  2. 連接管理工作室,並在你的情況下,它應該有工作。

這意味着問題出現在代碼中。由於您要連接字符串,因此我會調試代碼並查看連接字符串的最終結果。

提示:如果它是一個Web應用程序,請將連接字符串添加到web.config文件中。更多信息How to: Read Connection Strings from the Web.config File

+0

哈我在第一次得到答案,但你得到的票? :)哦,也許下次... – 2011-01-27 06:51:32

+0

看起來我遲到了幾秒。我投了你的票:) – Shoban 2011-01-27 06:54:02

0

首先,您在數據源和初始目錄之間缺少;(分號)。其次,如果這是新安裝的SQL Server實例,則可能需要進入SQL Server配置管理器,並啓用您需要的協議。

0

請檢查您是否可以ping通過cmd提到的服務器 也嘗試telnet從您的機器到服務器。 還有一件事要檢查將端口服務器配置爲如果它不是默認的一個,你將不得不添加端口爲132.186.127.169,XXX

+0

+1爲了抵消downvote;這是聲音建議,如果您從監視器複製/粘貼服務器名稱,您會注意到它包含dbname :) – Andomar 2011-01-27 06:58:20

0

連接字符串中的Servername是錯誤的。也因爲沒有動態值,所以你不需要字符串連接。將其更改爲:

string constring = "Data Source=132.186.127.169; 
        Initial Catalog=CadPool1; 
        Integrated Security=True"; 
3

你錯過了一個分號連接字符串

Data Source=132.186.127.169;"+ "Initial... 
         ^

如果您需要自己構建連接字符串可以使用SqlConnectionStringBuilder類。這樣你就不會被這些微妙的錯誤所困擾。

相關問題