SQL Express 2005在本地運行。我有一個項目由另一個人在同一臺機器上運行。我想要做的就是連接到它,不能那麼難吧?SQL Express連接字符串hell ASP.Net
這是一個我在我的舊傳統的ASP代碼用來打在同一個實例中運行的另一個數據庫:
提供程序= SQLOLEDB;數據源= MYLAPTOP \ MSSMLBIZ;堅持安全信息= TRUE;用戶ID = TestUser; Password = letmein; Initial Catalog = TestDB
但嘗試使用.net代碼的一個版本,因爲他使用SQLServer驅動程序編寫它,所以它不喜歡提供程序的東西。
下面是從他的代碼的原單連接字符串:
服務器=(當地);初始目錄= TheDatabase;用戶ID = TheUser;密碼= ThePassword;
我去過http://www.connectionstrings.com/sql-server-2005和試了幾個選項從那裏,這些都得到「SQL Server不存在或拒絕訪問」(多麼可愛的混合錯誤消息!):
- 數據源=本地主機;集成安全性= TRUE;初始目錄= TheDatabase
- 數據源=本地主機\ SQLEXPRESS;集成安全性= TRUE;初始目錄= TheDatabase
- 數據源= MyLaptop \ SQLEXPRESS;集成安全性= TRUE;初始目錄=數據庫
- Se rver = MyLaptop \ SQLEXPRESS; Initial Catalog = TheDatabase; User Id = TheUser; Password = ThePassword;
我已經創建了MyLaptop/IUSR_MyLaptop,MyLaptop/ASPNET,MyLaptop/IWAM_MyLaptop登錄在SQL Express和給了他們所有的讀/寫權限,我的數據庫並設置其默認DB是TheDatabase。
我做錯了什麼,我該如何調試這個問題呢?
更新:特別感謝克里斯的所有指針,最後到了那裏,如果你有類似的問題,請閱讀所有評論有很多鏈接和提示如何跟蹤他們。
可能是一個愚蠢的問題,但你試圖連接到的sql express服務器的實際名稱是什麼?是localhost \ sqlexpress還是別的? 將應用程序排除在等式之外,只需嘗試通過在命令提示符中執行'sqlcmd -S servername \ instancename -E'通過sqlcmd連接到sql,並查看它是否連接。 – 2009-07-23 10:31:00
該實例實際上稱爲MSSMLBIZ,但爲了清晰起見將其保留爲SQLExpress。 試過以上,並得到這個: SQL網絡接口:錯誤定位服務器/實例指定[xFFFFFFFF]。 Sqlcmd:錯誤:Microsoft SQL Native Client:建立到服務器的連接時發生錯誤。連接到SQL Server 2005時,此故障可能是由於默認設置下SQL Server不允許遠程連接導致的。 Sqlcmd:錯誤:Microsoft SQL Native Client:登錄超時已過期。 檢入服務器配置並打開了所有設置? – 2009-07-23 10:43:21
要嘗試重新安裝嘗試重置所有內容並重新開始... – 2009-07-23 11:23:34