2013-07-17 54 views
1

我試圖連接到一個數據庫,我跟着connection string suggestions。然而,我不是一個DB人,所以有些事情,hrmp ......不太明顯。無法連接到SQL Server數據庫

例如,數據庫服務器位於網絡中,並且與其連接從另一個服務器(也位於同一網絡)中。我已經使用服務器名稱和端口使用Management Studio連接到它,因此它已啓動並正在運行。

這是我的連接字符串。

System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(); 
conn.ConnectionString = 
    "integrated security=SSPI;"+ 
    "server=server.name.as.in.management.studio,4340" + 
    "persist security info=False;database=NameOfTheDb"; 

身份驗證使用AD完成,錯誤消息是40 - 找不到服務器。除了明顯的 - 服務器無法找到 - 我能做些什麼來解決這個問題,獲得更多信息等?

我在一個客戶,他們的系統沒有像任何人那樣記錄。我獲得的信息非常少,覆蓋面也很可疑。建立這個暴行的人已經很久沒有了。

建議歡迎。

編輯

按照提供的更正,我得到錯誤代碼0 - 請求的名稱是有效的,但沒有請求類型的數據發現

我該怎麼辦? :)

+4

在服務器之後缺少分號?我相信「數據庫」應該是「初始目錄」(但不要在此引用我)。您也可能想使用'SqlConnectionStringBuilder'來代替。 –

+0

這可能是一個防火牆問題。 – Grasshopper

+0

你需要把你的連接字符串放在括號內,IE'conn.ConnectionString =(「integrated security = SSPI;」+「server = server.name.as.in.management.studio,4340」+ 「persist security info =假;數據庫= NameOfTheDb「);' –

回答

3
System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlConnection(); 
conn.ConnectionString = 
"integrated security=SSPI;"+ 
"Data Source=myServerAddress;" + 
"persist security info=False;" + 
"Initial Catalog=NameOfTheDb"; 

希望這會有所幫助。

+0

它幫助**排序**。請在問題中查看我的編輯。我認爲目前我們正在走上一條好路。 –

1

Managmnet Sql Server的確實服務器是開始。 您可以通過轉到--->控制面板 - >所有控制面板項目 - >管理工具 - 服務 - > SQL Server(MSSQLSERVER)並點擊開始

System.Data.SqlClient.SqlConnection conn = new System.Data.SqlClient.SqlDbConnection(); 
    conn.ConnectionString = 
    "Data Source=ServerName;" + 
    "Initial Catalog=DataBaseName;" + 
    "User id=UserName;" + 
    "Password=Secret;"; 
    conn.Open(); 
+0

不確定你的意思,在這裏。服務器已啓動並正在運行。我可以使用Management Studio訪問它。我只是不能從我的C#代碼訪問的東西... –

+1

請到虛擬演播室的工具欄---到視圖 - >服務器資源管理器--->添加連接 - >寫服務器名稱然後測試連接從窗口添加連接並告訴我發生了什麼。 – ITInWorld

+0

啊,你的意思是從Visual Studio連接?完成並完美工作。 Visual Studio和SQL Management Studio都可以訪問數據庫。問題是我的代碼是作爲CRM的插件執行的,錯誤消息暗示(至少對我來說)我錯誤地設置了連接字符串。 –