2012-06-30 78 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。

相關問題