Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 在经典asp中连接到数据库_Vba_Asp Classic - Fatal编程技术网

Vba 在经典asp中连接到数据库

Vba 在经典asp中连接到数据库,vba,asp-classic,Vba,Asp Classic,我有别人写的旧代码,最近在服务器升级过程中被破坏了 我创建了32位DSN连接和64位DSN连接 32位的错误如下所示 Microsoft OLE DB Provider for ODBC Drivers error '80004005' [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application /path/to/

我有别人写的旧代码,最近在服务器升级过程中被破坏了

我创建了32位DSN连接和64位DSN连接

32位的错误如下所示

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application

/path/to/connection/file.asp, line 12 
出现上述错误的代码是:

<%
dim Conn
Dim powerConn
dim connstr
Dim pconnstr
connstr = Application("databaseA")
pconnstr = Application("databaseB")
Sub openConnection()
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.ConnectionTimeout = 600
    Conn.CommandTimeout = 600
    Conn.Open connstr // Error occurs here
    Set pConn = Server.CreateObject("ADODB.Connection")
    pConn.Open pconnstr
End Su

Sub closeConnection()
    Conn.close
    set Conn = Nothing
    pConn.Close
    set pConn = Nothing
End Sub
%>
<%
dim Conn
Dim powerConn
dim connstr
Dim pconnstr
connstr = Application("databaseA_64bit")
pconnstr = Application("databaseB_64bit")
Sub openConnection()
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.ConnectionTimeout = 600
    Conn.CommandTimeout = 600
    Conn.Open connstr // Error occurs here
    Set pConn = Server.CreateObject("ADODB.Connection")
    pConn.Open pconnstr
End Su

Sub closeConnection()
    Conn.close
    set Conn = Nothing
    pConn.Close
    set pConn = Nothing
End Sub
%>
出现上述错误的代码是:

<%
dim Conn
Dim powerConn
dim connstr
Dim pconnstr
connstr = Application("databaseA")
pconnstr = Application("databaseB")
Sub openConnection()
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.ConnectionTimeout = 600
    Conn.CommandTimeout = 600
    Conn.Open connstr // Error occurs here
    Set pConn = Server.CreateObject("ADODB.Connection")
    pConn.Open pconnstr
End Su

Sub closeConnection()
    Conn.close
    set Conn = Nothing
    pConn.Close
    set pConn = Nothing
End Sub
%>
<%
dim Conn
Dim powerConn
dim connstr
Dim pconnstr
connstr = Application("databaseA_64bit")
pconnstr = Application("databaseB_64bit")
Sub openConnection()
    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.ConnectionTimeout = 600
    Conn.CommandTimeout = 600
    Conn.Open connstr // Error occurs here
    Set pConn = Server.CreateObject("ADODB.Connection")
    pConn.Open pconnstr
End Su

Sub closeConnection()
    Conn.close
    set Conn = Nothing
    pConn.Close
    set pConn = Nothing
End Sub
%>


我需要帮助来解决这个问题,因此非常感谢您的评论。

对于经典ASP应用程序,应用程序变量通常在
global.asa
中指定。由于您的连接字符串似乎是从
应用程序(“databaseA_64bit”)
分配的,因此您应该查看一下以找到您的连接字符串


DSN配置通常位于控制面板>管理工具>数据源>用户/本地/系统DSN中。

请显示
应用程序(“databaseA_64位”)
的相关连接字符串-您可以xxx输出凭据/服务器名称。DSN设置时连接字符串在哪里?我不理解经典asp,因为它不是.NET,其中有一个web.config。那么,您在应用程序变量中设置了它,所以它可能在您的global.asa中?DSN配置通常位于控制面板>管理工具>数据源>用户/本地/系统DSNIt位于gloabal文件中。谢谢