【发布时间】:2012-09-11 15:40:55
【问题描述】:
我知道,这个话题听起来很糟糕。但我实际上必须连接这些技术。
问题
我目前正在将公司的 Intranet(主要用经典 ASP 编写)从带有 IIS 6 的 Windows Server 2003 32 位迁移到带有 IIS 7.5 的 Windows Server 2008 R2 64 位。除了一个使用set conn = server.createobject("adodb.connection") 连接到connstring="DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=path\to\mdb\which\is\really\there" 的子页面外,一切都运行良好。
我打开连接 (conn.open connstring),构建一个查询字符串,然后,当我想set rsresult = conn.execute(sqlusr) 时,我得到了
Microsoft OLE DB Provider for ODBC Drivers error '80004005'
[Microsoft][ODBC Microsoft Access Driver] ODBC--connection to 'TABLE_THAT_ACTUALLY_EXISTS' failed.
该错误在conn.execute(sqlusr) 所在行引发。当然,它在以前的环境中运行良好。
我尝试了什么?
- connect to MS Access accdb file on Windows Server 2008 - 得知 Windows Server 2008 预装了 MSJet,所以这个问题没有用(提醒:mdb 用于 Access 97)
- http://support.microsoft.com/kb/168336 - 这实际上是建立联系的方式,但我认为某事可能是错误的,拼写错误,...
- 我将 ODBC 数据源从以前的服务器复制到了新服务器(我保留了名称) - 问题仍然存在
- 我在 Windows Server 2008 机器上安装了最新更新
其他信息
-
mdb将仅在 Access 97 中打开(为什么?不要问我:/我不是唯一一个试图在 Access 2000/2003/2007/2010 中打开它的人 - 它有效无处) - IIS 7.5 上此网页的应用程序池将
Enable 32-bit Applications选项设置为 true。父路径也已启用。
我将不胜感激有关检查/做什么/如何解决此问题的任何其他提示。
【问题讨论】:
-
也许你可以试试这个早期的 SO 解决方案并在 IIS 中创建一个自定义连接字符串:stackoverflow.com/questions/7215871/…
-
您需要 Access 97 表格等还是只需要数据?如果只是数据,请尝试导入新的 Access 版本。
-
我会首先专注于将数据转换为更新的 Access 格式。
-
感谢 Remou 和 HK1,我不相信它这么简单 - 将数据导入 access 2010 解决了我的问题:D
标签: ms-access asp-classic windows-server-2008 iis-7.5 ado