2012-06-30 48 views
1

我试过部署一个使用MS ACCESS 2010 db的小型网站(ASP.NET)。部署的网站,我得到以下错误在服务器上:部署ACCESS OleDb驱动程序

The 'Microsoft.ACE.OLEDB.12.0' provider is not registered on the local machine. 

ConnectionString的使用:Provider=Microsoft.ACE.OLEDB.12.0; Data Source=path-to-db

的MS Office没有安装在服务器上,也不是Jet数据库引擎。该网站在共享主机环境中运行,因此我无法在该服务器上安装Office,因此我可能以某种方式通过dll部署该提供程序?

是否可以部署ASP.Net所需的驱动程序来连接到数据库,而无需在服务器上运行安装。由于这是在共享主机环境中,我无法安装任何东西。只有ftp的文件上传。

+0

我估计你会有更好的机会在http://serverfault.com上提问。 Stackoverflow是一个编程相关的网站,你的问题似乎不属于该类别。 – Fionnuala

+0

谢谢@Remou。我会在那里发布我的问题。我不知道这个论坛。 – Kman

回答

0

环顾四周,这与Office无关。如果你只使用Access作为数据库,那么你不需要安装它。信息在这里:http://www.mytechsupport.ca/forums/index.php?topic=11237.0

我发现这个StackOverflow线程与你所做的相同的错误,所以它听起来像它可能是同一个问题。 Microsoft.ACE.OLEDB.12.0 provider is not registered

如果它的运行窗口然后查看该线程并查看64位问题是否是问题。我之前有过这个相同的问题,它显然很常见。您可能需要通过电子邮件向您的服务器寻求支持。

它运行的是Linux吗?如果它在运行linux,那么问题可能只是完全缺乏连接到Access数据库的驱动程序。如果是这种情况,我会通过电子邮件发送您的支持,并询问他们是否可以为您安装适当的驱动程序。这里的信息:http://nixcraft.com/databases-servers/11878-connect-microsoft-access-database-php-linux-server.html

+0

重新提供您的第一个链接:如果您使用* MDB *,那么您无需安装任何内容(尽管您需要以32位身份运行)。该线程从2006年开始,Access 2007引入了ACCDB格式和相关的ACE OLEDB驱动程序。 –

+0

这不是一个64位的问题。这是在没有安装驱动程序的情况下连接到accdb(访问)数据库。如何在共享托管网站上部署驱动程序 – Kman

1

打开IIS,导航到应用程序池,找到appPool为您的网站,右键单击,高级设置,将“启用32位应用程序”设置为true。

相关问题