1

MS ACCESS 2010 db を使用している小さな Web サイト (ASP.NET) を展開しようとしました。サーバーに Web サイトをデプロイすると、次のエラーが表示されます。

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

使用される接続文字列:Provider=Microsoft.ACE.OLEDB.12.0; Data Source=path-to-db

MS Office はサーバーにインストールされておらず、Access データベース エンジンもインストールされていません。Web サイトは共有ホスティング環境で実行されているため、そのサーバーに Office をインストールできません。どうにかして dll によってプロバイダーをデプロイできますか?

サーバーでインストールを実行しなくても、ASP.Net がデータベースに接続するために必要なドライバーを展開することは可能ですか。これは共有ホスティング環境にあるため、何もインストールできません。ftpによるファイルアップロードのみ。

4

2 に答える 2

1

IISを開き、[アプリケーションプール]に移動して、WebサイトのappPoolを見つけ、右クリックして詳細設定を行い、[32ビットアプリケーションを有効にする]をtrueに設定します。

于 2012-07-02T06:37:29.673 に答える
0

周りを見回すと、これはOfficeとは何の関係もありません。データベースとしてAccessのみを使用している場合は、Accessをインストールする必要はありません。ここの情報:http ://www.mytechsupport.ca/forums/index.php?topic = 11237.0

私はあなたがしたのと同じエラーでこのStackOverflowスレッドを見つけたので、同じ問題である可能性があります。Microsoft.ACE.OLEDB.12.0プロバイダーが登録されていません

実行中のウィンドウの場合は、そのスレッドを調べて、64ビットの問題が問題であるかどうかを確認します。私は以前にこれと同じ問題を抱えていましたが、明らかに非常に一般的です。サーバーのサポートについては、誰にでも電子メールを送信する必要がある場合があります。

Linuxを実行していますか?Linuxを実行している場合、問題はAccessデータベースに接続するためのドライバーがまったくないことである可能性があります。この場合、私はあなたのサポートに電子メールを送り、彼らがあなたのために適切なドライバーをインストールできるかどうか尋ねます。ここの情報:http://nixcraft.com/databases-servers/11878-connect-microsoft-access-database-php-linux-server.html

于 2012-06-30T21:06:04.470 に答える