頻繁なAccessの修復要求の原因と解決方法

このQ&Aのポイント
  • Accessを使用していて、頻繁に修復が必要になり困っています。VBAの使い方の問題でしょうか?ユーザーがWindows-95だけだったときには一度も無かった現象です。Windows-2000を使うようになってから修復要求が出てきました。
  • 一日に1~2回のペースでこのようなメッセージが出ます。データベース XXX は修復する必要があるか、データベースファイルではありません。Microsoft Accessデータベースが開いているときに、いずれかのユーザーがMicrosoft Accessを終了しました。このデータベースを修復しますか?[はい][いいえ]
  • Accessの修復要求が頻繁に出る原因としては、VBAの使い方に問題がある可能性があります。特にWindows-2000を使用している場合、Accessのバージョンによっては修復要求が発生することがあります。解決策としては、VBAのコードを見直し、データベースの安定性を確保することが重要です。また、必要に応じて最新のAccessバージョンにアップグレードすることも検討してください。
回答を見る
  • ベストアンサー

Accessの修復要求が頻繁に出る

Accessを使用していて、頻繁に修復が必要になり困っています。 原因が分かりません。 どなたか思いつく原因をお教えください。 VBAの使い方の問題でしょうか? ひとつ気になることは、ユーザーがWindows-95だけだったときには 一度も無かった現象です。 Windows-2000を使うようになってから修復要求が出てきました。 現象はともかく、修復要求が出るたびに全員がデータベースを閉じ 修復しなければならない状況は厳しいのでなんとかしたいです。 よろしくお願いします。 一日に1~2回のペースでこのようなメッセージが出ます。 ==================== データベース XXX は修復する必要があるか、 データベースファイルではありません。 Microsoft Accessデータベースが開いているときに、いずれかのユーザーが Microsoft Accessを終了しました。 このデータベースを修復しますか? [はい][いいえ] ===================== 使用環境: ヴァージョン:Access97 Accessデータベースは、NTサーバー上にある。 ユーザー:Windows-2000,Windows-95 (10人程度がネットワーク共有して使用) 一日一回最適化は行っております。

質問者が選んだベストアンサー

  • ベストアンサー
  • DrSumire
  • ベストアンサー率39% (264/666)
回答No.1

Windows2000が参加してからということなので、もしかするとWin2kからNTサーバへのファイルアクセス時の問題?が原因なのかもしれないです。 問題と書きましたがMS曰く仕様なのですが、Win2kからWinNTにファイルアクセスを行うときWin9XやWinNTからWinNTにファイルアクセスに行くよりもはるかにレスポンスが悪いというのがあります。 その為複数人で操作するときにAccessの排他制御が上手く動作できずにDBがクラッシュしてしまうのではないでしょうか? 試しにWin2000サーバやクライアントにAccessのMDBを移動して状況が改善するか試してみてはいかがでしょうか? それでも改善しないのであれば、MDBに直接アクセスしないでMSDEをかませてSQLサーバ風にVBので作成したアプリを改造してみてはいかがでしょうか? ※Accessのバージョンアップが必要だったかな? やはりISAM型DBでマルチアクセスは危険なのでSQLServerやOracleなどに乗り換えることをお勧めします(ライセンスが高いのが難点ですがAccessよりも安定していてTCOを考えれば元が十分取れると思います)、スキルがあれば思い切ってMySQLやPostgreSQL等のも検討してみてはどうでしょうかライセンス費用は安価もしくは無料なのですが管理のほうは難しくなると思いますが。

onakagoo
質問者

お礼

う~ん、なるほど勉強になりました。 ご指摘の通り試行錯誤して試してみます。 ありがとうございました。

関連するQ&A

  • アクセスMDBファイルが破損

    アクセスんのMDBファイルを使用中に、何かの原因でファイルにダメージが起こったものと思われますが、終了後に再起動しようとしてもファイルを開けません。 下記のエラーメッセージが出ます。 「~は修復する必要があるか、データベースファイルではありません。 Microsoft access データベースが開いているときに、いずれかのユーザーがmicrosoft access を終了しました。」 「このデータベースを修復しますか?」 修復を選択して、管理用のパスワードを入力しても 「パスワードが正しくありません。」とメッセージが出て、 「~は修復できないか、Microsoft accessデータベースファイルではありません。」となり、結局、開くことができず終わってしまいます。 このDBファイルはネットワークで複数人が使用しています。 ファイルと同名のLDBファイルは開いたままになっています(64kb)。 なにか修復の方法があれば教えてください。 よろしくお願いします。

  • ACCESS2000、データベース破損?修復可能?

    ACCESS2000を使用しています。セキュリティ設定したデータベースファイルを社内で共有し、使用していたのですが、突然開けなくなりました。開こうとした時に起こった現象は次のとおりです。 (1)警告メッセージ「、Micrsoft ACCESS データベースが開いている時に、いずれかのユーザーがMicrsoft ACCESSを終了しました。修復しますか?」が表示され、はいと答える。 (2)警告メッセージ「オブジェクト’Databases’が見つかりませんでした。オブジェクトが存在していること、名前やパス名が正しいことを確認してください。」と表示され、OKと答える。 (3)エラーメッセージ「データベース’(パス名.ファイル名)’は修復できないか、Micrsoft ACCESS データベースファイルではありません。」と表示され結局開けない。 エクスプローラーからデータベースファイルを見たところ、ファイルサイズが1/10くらいになっていました(!)この状況から修復は可能でしょうか?バックアップはここのところとっておらず、四苦八苦している状況です。どなたかご存知の方、宜しくお願い致します。

  • ACCESS2000ファイルの修復

    ACCESS2000で作成したファイルを開こうとすると、以下のような現象が出ます (1)「データベース'ファイル名.mdb'は修復する必要があるか、データベースファイルではありません。修復しますか。」とのメッセージが出てくる。 (2)「はい」で進むと、データベースパスワードを設定しているため、「パスワードが正しくありません」とのメッセージが出る。 (3)「OK」を押すと「データベース'ファイル名.mdb'は修復できないか、データベースファイルではありません。」とのメッセージで終了する。 何とか修復したいのですが、以前の似たような質問の回答にありました「復旧ソフトを使う」以外の方法はないのでしょうか?最悪、フォームとモジュールだけでも取り出したいのですが。 どうぞよろしくお願いします

  • AccessのDB破損に関して お教え願います。

    OS:Windows2000 Access Version:Access2002(XP) いつもお世話になっています。 Accessにてシステムを構築し、ある業務にて運用しています。 データmdbをサーバにおいて、クライアントをネットワーク経由 にてプログラムmdbを使用してアクセスしています。 上記状態で最近以下のメッセージが頻発して困っています。 「Microsoft Access データベースが開いているときに、 いずれかのユーザが Microsoft Access を終了しました。このデータベースを修復しますか?」 この状態になった場合は、最適化を行えば使えるようになりますが、頻発して困っています。 同様のシステムを運用しているところが複数在りますが・・・・ 同現象が発生しているのが1つしかないことです。 全部同じ現象が発生しているのなら、プログラム的なバグと特定できるのですが、、、、、 なにとぞ、ご教授をお願いいたします。

  • データベースアクセスで。

    VBとAccessを使用してデータのやりとりを行っています。 Data1を貼り、DatabaseNameを設定するところまではうまくいきましたが、RecordSourceプロパティをクリックすると「データベースの形式'C:\xxx\xxx.mdb'を認識できません」と表示されてしまいます。 別DBを設定すると上記の現象がでないので、Accessが原因だとは思いますが、VBを使用する際の注意点などあるのでしょうか? 【環境】WinXP SP2 VB6.0 / Access2000です。

  • ACCESS2010での最適化処理について

    ACCESS2010でネットワークサーバに保存してあるデータベースの最適化ができません。 Access2010で作成したデータベースが部署内共有のネットワークサーバ上に保存してあります。 データ処理の都合上、こまめに最適化して使用したいのですが、所有権を有したPC(自分のPCです)以外からの最適化処理ができません。 表示されるエラーメッセージは以下です。 「最適化/修復処理が取り消されました。データベースが格納されているフォルダーに対して適切な権限を持っていない可能性があります。最適化/修復を実行するには、データベースが格納されているフォルダーに対してすべての権限を持っている必要があります。詳細については、システム管理者に問合せて下さい。」 データベースファイルのアクセス権限は、Everyoneと自分のPC名(所有権者)はフルコントロールになっています。 上の階層(ネットワークサーバ上のフォルダ)は全て特殊なアクセス許可になっており、編集はできません。 Microsoftのヘルプにて以下を見つけましたが、和訳が意味不明で解決に至りませんでした。 http://support.microsoft.com/kb/2834831/ja 所有権者以外のユーザーからも最適化を行える方法をご存じの方がおりましたら、ご教示下さい。

  • WINXPのHEとサーバーとの接続でユーザーIDを要求されます。

    XPのHOME EDITIONを購入して、NT4と接続しようとしました。 NTの設定も終わり、XPからNTへアクセスしようとすると、ユーザーIDを要求する画面が表示されてしまいます。ユーザーIDを入力すればアクセスできるのですが、XPの電源を落とすたびに同様の処理をしなくてはいけません。ユーザーIDを要求する画面を表示させず、意識しないでNTとの接続が行えるようにするにはどうすればよいのでしょうか?どなたかよろしくお願いします。

  • プログラムが頻繁にアクセスを要求してくる。

    プログラムが頻繁にアクセスを要求してくる。 現在PCはwinのvistaを使用してるのですが、「hprUpdate.exe」というプログラムが頻繁にアクセスを要求してきます。(ユーザーアカウント制御という画面が出て、「認識できないプログラムがコンピューターにアクセスを要求してます」と警告が出てます) プリンター(複合機)のプログラムだと思うのですが、プリンターを使っていなくても(プリンタのコンセントは抜いた状態でPCには繋いでます)要求してくるのでとても困っています。 デスクトップの状態でも、ネットをしていても、30分~1時間に1回の割合で出てきます。 「許可」をしても「キャンセル」をしても何も変わりません。 最初の頃は出てなかった気がするんですが・・・こういうものなんでしょうか? もし、頻繁に要求されないような方法があったら、教えてください。 因みにプリントはhpの複合機photosmartC4275  型番CC220CABJです。 よろしくお願いします。

  • apacheアクセスログに不正要求?

    現在、apacheを使ったWEB画面の開発をしているものです。 先日、apacheのアクセスログを見ていたところ、特定のIPアドレスから、ある画面を参照した際に記録されるログの数秒後(2秒~10秒程度が多い)に、同じ画面に対する要求ログが2回出力される現象が起きていました。さらにこの後発の2回のログのユーザーエージェントは最初の要求とは異なるものでした。 添付の画像にアクセスログの例を記述します。 補足  ・この特定のIPアドレスからの要求は全ての画面の要求で同じ事象が発生します。   1回目のアクセス後、2秒~10秒程度の後に2回アクセスがほとんどです。  ・他のIPアドレスからは、このような事象は発生していません。  ・この事象により動作上の不具合も発生しており回避方法を突き止めたいと考えています。 以上、よろしくお願いします。

  • HTTP 400 正しくない要求・・・・

    インターネットを見ようとすると、ゲストのユーザーアカウントでは普通に見れるのですが なぜか昨日から管理者のアカウントで見ようとすると、「正しくない要求」の画面になってしまいます。 アドレス(D)は正常にたとえば 「www.yahoo.co」 とでていますが ページのプロパティを見ると 「C\WINDOWS\System32\shdocic・・・・・・」と長いアドレスのあとに「yahoo.co.jp」となっています。 ウイルスバスターの画面もURLフィルターのデータベースにアクセスできないため・・・・と出ています。 さっぱりわかりません・・・どなたか教えていただけませんか・・・