【发布时间】:2023-03-12 03:48:01
【问题描述】:
我们在服务器 A 上安装了 ASP.NET 1.1 应用程序,在服务器 B 上安装了 SQL Server 2000。我们希望将数据库从 SQL Server 2000 迁移到 SQL Server 2008。
问题是我们没有 ASP 应用程序的代码,因为它是由一些不再存在的第三方开发公司开发的。所以我们唯一剩下的就是预编译的代码和DLL。我用 PE 资源管理器反汇编了 DLL 文件,以确定 ADODB 连接是使用 DSN 建立的。我们在服务器 B 上将 SQL Server 2000 升级到 SQL Server 2008,并在服务器 A 中安装了 SQL Server 本机客户端驱动程序,以便我们的应用程序可以使用该 ODBC 驱动程序连接到 SQL Server 2008。我使用新的 ODBC 驱动程序和 ASP 应用程序重新配置了 DSN还是不行。它无法连接到数据库。
附加信息:我们在 IIS 中有一个用于 ASP.NET 应用程序的应用程序池,我重新启动了 COM 组件,但没有成功。我尝试使用来自服务器 A 的简单 test.asp 文件使用以下代码测试数据库连接,然后它就连接了。
dim ObjConn = Server.CreateObject("ADODB.Connection")
' DSN
ObjConn.Open("dsn=xxx;uid=xxxx;pwd=xxxx")
Dim ObjRS = ObjConn.Execute(" xxx 'xxx','xxx','xxx',0,null,null ")
我的问题是 ASP.NET 1.1 应用程序是否可以与 SQL Server 2008 一起使用,还是不可能。据我所知,应用程序是否使用 DSN 连接到数据库,以及我们是否使用正确的 ODBC 驱动程序重新配置它,这应该不是问题。
【问题讨论】:
-
你没有说收到的错误。这可能很有帮助
-
应用程序显示自定义错误消息并且不显示实际生成的异常。遗憾的是我没有 ASP 应用程序的代码。
-
查看运行 ASP.net 应用程序的服务器上的 EventViewer。它可能会捕获错误消息。
-
您是否尝试过使用 RedGate 的 Reflector 来调试程序集?这可能会让你看到它是如何真正失败的。
-
我已经检查了两个服务器上的事件查看器,当我尝试访问应用程序时没有任何记录。我正在尝试在应用程序所在的同一台服务器上安装 SQL 2008,并检查应用程序是否工作,并查看 SQL 2008 配置是否存在问题,因为它现在安装在远程服务器上。
标签: asp.net sql-server-2008 odbc sql-server-2000 dsn