- 締切済み
排他のエラーメッセージ
お世話になります。 ACCESSでサーバへ書き込む処理(DBへデータ転送)を実行しようとすると 「7866データベースファイルがないか、他のユーザが排他モードで開いているため、データベースを開くことができません」 とエラーメッセージが表示されるようになってしまいました。普段は問題なく処理できるのですが、最近エラーの頻度が多くここ1~2日は全くダメになってしまいました。 サーバ(DBが格納されている)間のネットワークは問題なく接続できてます。 なにかご存知の方、ご教授いただければ幸いです。エラーメッセージの意味だけでも良いですのでお願いします。 ※実際に作成した方と連絡が取れず正直困ってます。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- O_cyan
- ベストアンサー率59% (745/1260)
>今回はそのとある拠点のMDBに対してダメなようです。 レコードロック情報が残ってしまっている可能性があります。 そのとある拠点のmdbファイル名と同じレコードロック情報(拡張子は.ldbです)を探してみてください。 通常はそのとある拠点のmdbファイルと同じフォルダ内(ディレクトリ内)にあるはずです。 そのmdbファイルを誰も開いていないのにレコードロック情報が残っていれば削除してしまえば開くはずです。 上記を確認してください。
- akina_line
- ベストアンサー率34% (1124/3287)
こんにちは。 サーバのDBは何を使われていますか? ACCESSのファイルをサーバで共有しているのですか? エラーメッセージの意味は(ファイルはあると思うので、)テーブルのロックがかかったままだと言うことだと思います。 DBに書き込むときに他のユーザが修正しないようにロックをかけて修正しますが、そのプロセスが正常に終わらずにロックされたままになったのではないでしょうか。 ロックのはずし方はDBによって異なります。 では。
補足
早速の書き込みありがとうございます。 サーバ側にACCESSのデータベース(MDB)があります。 クライアント側はACCESSで作成したプログラムがあります。 データベースは処理する拠点毎に別々にあります。(1サーバ内の共有フォルダ内) S拠点:A001.MDB T拠点:T001.MDB のように。 今回はそのとある拠点のMDBに対してダメなようです。 MDBを開きテーブルの中身を見て、「今月(今週)のデータが転送された・されてない」の判断をしたりします。 ACCESSに関しては全くの素人でこの程度しか理解してません。
お礼
お世話様です。 レコードロック情報は見当たりませんでした。 試しに、他のPCへMDBをコピーして実行したら何ら問題なく動作してしまいました。 一体なんだったのやら・・・・。