2013-07-31 148 views
2

我有一個WinForms程序我創造了我的一個朋友說,使用SQL Server Express數據庫。在本地,我可以連接到我的SQL Server Express,當我將應用程序部署到他的計算機時,它也可以工作。我很難從我的機器連接到他的SQL Server Express實例(我試圖在vs2012中以調試模式運行程序,但連接到他的數據庫)。該程序使用實體框架,以防事件發生(我不認爲它確實如此)。遠程計算機上SQL Server Express的連接字符串?

我們已經設置了防火牆,允許我的IP地址來訪問他的電腦和他的SQL Server ...所以我可以通過遠程桌面登錄,我還可以連接使用SSMS從我的電腦,看到所有的數據庫。 ...但爲什麼我不能使用vs2012連接?我認爲它與連接字符串有關,但尚未找到工作解決方案。

這是我曾嘗試:

擁有這些,從ConnectionStrings.com

Server=100.100.100.100\SQLExpress;Database=TestDB;User Id=UserID;Password=myPassword; 

DataSource=100.100.100.100\SQLExpress;Database=TestDB;User Id=UserID;Password=myPassword; 

顯然,IP地址已更改爲這個職位的目的。

任何想法?

+0

你是怎麼意思設置防火牆的?您在同一網絡上或通過NAT設備(路由器)連接到他的計算機? –

+0

哦,這些連接字符串是什麼? EF創建TSQL腳本時,大公是在項目的app.config文件爲您創建自定義字符串 –

+0

他「設置」防火牆,這樣我可以連接到自己的電腦,同時在不同的網絡(NAT設備)。第一個連接字符串是EF生成的(但是我在本地生成它,而不是使用他的IP地址),所以我認爲我只需更改IP地址即可,但不幸的是情況並非如此。 – Robert

回答

1

你使用的連接字符串屬性:

DataSource 

有沒有這樣的事情,我懷疑這只是一個錯字(它支付使用剪切和粘貼,而不是轉換)。這個屬性實際上有一個空格,所以它應該是:

Data Source 
+1

謝謝Aaron ...隧道視覺有時是可怕的:) – Robert

1

下面是你需要檢查其他計算機上的事情的清單:

  • 啓用TCP/IP協議?轉到SQL Server配置管理器 - > SQL Server網絡配置 - >關於{}如協議
  • 在配置管理器監聽啓用哪些IP地址?進入TCP/IP屬性 - > IP地址選項卡
  • SQL Server瀏覽器啓動
  • 防火牆設置不當 - 要啓用TCP和UDP流量端口1433
  • 服務器允許遠程連接?在SSMS打開該實例的屬性並檢查Connections選項卡。