2009-11-28 34 views
1

我有一位自2003年以来运行一个使用访问数据库文件(.mdb)在asp 3.0中构建的简单网站的客户。最近,客户收到一台新的服务器,随Windows 2003服务器64位,并且网站不再工作,显示此消息:使用Access数据库在64位环境下运行的ASP

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位环境中,一切正常。我真的需要一些帮助。谢谢。

回答

1

您是否将IIS设置为在32位模式下运行?您可能需要制作config change suggested by Microsoft

+0

我配置IIS运行在32位模式下,但现在我得到Service Unavailable消息,所以我不得不回滚到64位模式。 – 2009-11-28 23:19:27

0

我不确定Access 2010对您是否有用,但可能值得检查,因为它提到了64位。

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;" 
相关问题