我有一個傳統的VB6應用程序,其中服務器名,數據庫名,用戶名等在INI文件中定義,但連接字符串的端口號(默認1433)在硬編碼應用程序。它被移動到一個新的sql server後端運行一個不同的端口號。我試圖避免必須改變和重新編譯需要重新測試的應用程序,文檔等。我嘗試更改INI文件,以便對於我放入的新服務器:SERVERNAME \ INSTANCE,NEWPORTNUMBER在SQL Server連接字符串中列出的多個端口
This effective使用數據源= SERVERNAME \ INSTANCE,NEWPORTNUMBER,1433建立連接;
這似乎正常工作,因爲它在我運行應用程序時連接到數據庫。在我看來,1433部分被忽略。這是一個有效的假設,否則這會導致我在這裏看不到一些問題?
編輯:字符串的方式連接字符串是建立在VB6代碼:
ConnectString = "Provider=MSDataShape;Trusted_Connection=Yes;Data Source=" & SERVER & ",1433;Initial Catalog=" & DATABASE & ";Data Provider=SQLOLEDB.1;Extended Properties=""Network=DBMSSOCN"""
從INI文件拉到SERVER &數據庫值。
什麼最終解決了這個問題?您是否強制服務器使用端口1433?大量替換和重新編譯? SQL別名? – UnhandledExcepSean 2011-12-23 21:52:45
相當長一段時間,但據我記得,它似乎忽略了端口號和使用SERVERNAME \ INSTANCE並工作得很好,所以我們就這樣離開它。 – BBlake 2011-12-24 18:06:46