最終更新日:2020 年 3 月 24 日

問題

Office 365 と以前のバージョンの Office の両方が MSI でインストールされていて、そのプログラムが OLEDB インターフェイスまたは ADO.Net インターフェイスを使用している場合、接続を終了した後でもデータベースがロックされていることを示すエラーが発生することがあります。

この問題は、Office 365 バージョン 2002 がインストールされており、以前のバージョンの Office が MSI 経由でインストールされている場合にのみ発生します。 たとえば、Office 365 および 2013 Access Runtime または 2010 Access データベース エンジン再頒布可能パッケージがインストールされている場合があります。

シナリオ

データベース ファイルへの接続を開いたり閉じたりした後に .Net プログラムのデータベース ファイルを削除しようとすると、次の例外が表示されることがあります。

System.IO.Exception:ファイルは別のプロセスで使用されているため、'このプロセスは'データベースへのパス' ファイルにアクセスできません。

データベースの場所を見ると、Ace データベース ロック ファイル (databasename.laccdb) は、引き続き存在しています。

通常は、数秒から数分の一定の時間が経過すると、ロック ファイルが削除され、データベースにアクセスできるようになります。

Office 365 のバージョン 2002 から、Office 365 に付属している Ace のバージョンは COM OLEDB インターフェイスのプロバイダーになりますが、以前のバージョンでは、MSI 製品に含まれる Ace のバージョンが使用されます。

動作には違いがあります。特に Office 365 の場合は、既定値の OLEDB リソース プーリング を使用して接続し、MSI の場合は、接続に既定のプーリングを使用しません。 このような影響があるのは、接続が閉じたり破棄されたりした場合に、システムが再利用する可能性があり、接続がすぐに解除されないためです。 ただし、この場合は、プールが接続を解放するまでデータベース ファイルのロックが解除されないことがあります。

状態: 修正済み

この問題は修正されました。  Access を起動する場合は、[ファイル]、[アカウント]、[更新オプション]、[今すぐ更新] の順にクリックすると、最新バージョンであることが確認され、すべてのバージョンで利用可能な修正プログラムが適用されます。

バージョン 2002 (最新チャネル) を使用している場合、この問題はビルド 16.0.12527.20278 以降で修正されています。

バージョン 2003 (最新チャネル (プレビュー版)) を使用している場合、この問題はビルド16.0.12624.20176 以降で修正されています。

バージョン 2004 (ベータ チャンネル) を使用している場合、この問題はビルド 16.0.12705.10000 以降で修正されています。

その他のバージョンはこの問題の影響を受けません。

その他のリソース

エキスパートのアイコン (脳、歯車)

エキスパートに質問する

エキスパートとつながり、最新のニュース、更新プログラム、ベスト プラクティスについて議論し、ブログを参照します。

Microsoft 技術コミュニティ

コミュニティのアイコン

コミュニティでサポートを得る

サポート担当者、MVP、エンジニア、その他の Office ユーザーに質問し、解決策を見つけます。

Answers の Office フォーラム

機能リクエストのアイコン (電球、アイデア)

新機能の提案

ご意見ご感想をお待ちしております。 ご意見をお聞かせください。 すべてのコメントに必ず目を通しています。

フィードバックを送信する

関連項目

最近の Office の問題に関する修正プログラムと解決策

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。