我有一个传统的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