我从2003年开始有一个客户运行一个内置在asp 3.0中的简单网站,其中包含一个访问数据库文件(.mdb)。最近,该客户获得了一个新的服务器,该服务器附带了Windows 2003服务器64位,并且该网站不再运行,显示此消息:
ADODB.Connection错误'800a0e7a' 无法找到提供商。它可能没有正确安装。
当然我已经做了一些网络研究,发现使用mdb文件(访问数据库)的64位环境似乎存在问题。我不知道该怎么办。连接数据库的代码:
“Provider = Microsoft.Jet.OLEDB.4.0; Data Source = C:\ dados \ politics \ consulta \ camara.mdb; MODE = Read; Jet OLEDB:Database Password = 1234;”
P.S。 在32位环境中一切正常。我真的需要一些帮助。感谢。
答案 0 :(得分:1)
您是否已将IIS设置为以32位模式运行?您可能需要制作config change suggested by Microsoft。
答案 1 :(得分:0)
我不确定Access 2010
是否对您有用,但在提及64位时可能值得检查。
答案 2 :(得分:0)
我以前遇到过这个问题。它是由大多数Office安装32位引起的,即使在64位计算机上也是如此。如果您在64位计算机上安装了32位Office,则可以解决此问题。您可以安装Access database driver from Microsoft。您需要下载并安装64位版本。如果您尝试安装它,您需要通过命令提示符(cmd.exe)安装它并添加/ passive标志。
cmd.exe c:\locationofdownloadedfile\AccessDatabaseEngine_x64.exe /passive
(如果合适,请不要忘记以管理员身份运行cmd.exe)
然后,您可以在asp代码中使用以下连接字符串:
Set Con = Server.CreateObject("ADODB.Connection")
Con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\pathtoaccessdatabase\accessdatabase.mdb;Persist Security Info=False;"