よく「共有すると壊れる」「共有して壊れた」と聞きますが、具体的にどういう状況が発生するのでしょうか。
分かりやすく壊れる: 何かしらのエラーメッセージが表示されて強制終了したり、立ち上げられなかったりする。
分かりにくく壊れる: エラーメッセージは何も表示されないが、思いも寄らないようなデータがひそかに、勝手に書き換わっている(排他制御プログラムの書き方が稚拙であるものを除く)。
この両方が起こるのか、前者だけが起こるのか知りたいです。
経験のある方からお聞かせいただきたく、よろしくお願いします。
修正です。「後者だけが起こる」パターンがある、後者だけが日々静かに進むことがあるのか知りたいです。
Access95のころから継続して、バックエンドとフロントエンドに分けて数人のユーザーで共有しているデータベースシステムがあります。この経験からの回答になります。
これは、かつては何度か経験してます。最近はまったくないです。Access2000より前は結構不安定だった記憶があります。
これは、判断が難しいですよね。たまにデータが消えたとか書き換わったという報告がありますが、調べてみると、たいていユーザーの操作ミスか、コードのバグです。もし、ひそかに書き換わっていたとしても検証が難しいですよね。
どちらにてしも、定期的にバックアップは必須でしょう。
少しずつ壊れていって、ある日、エラーがでたり立ち上がらなくなるという可能性もあるので、必用に応じて数世代のバックアップをとっておいて、世代を遡れるようにしておくいいでしょう。
下記も読んでみてください。
お返事ありがとうございます。
私も hatena 様よりは短いながら、Access 2000 ぐらいから触っておりまして、
しかしこの「壊れる」のさじ加減がいまいちはっきりしないまま来ました。
とりあえず、お金に関わる重要な役割を Access に持たせないでずっと来たのですが、
「たまにデータが消えたとか書き換わったという報告がありますが、
調べてみると、たいていユーザーの操作ミスか、コードのバグです」
という印象を私も持っており、
別に持たせてもいいんじゃないか、皆さんどうしてるんだろうか……
と思ったというのが経緯です。
SQL Server に移ってくれよ、というのが MS の声だとは解っているのですが(苦笑)。
データが壊れる
オートナンバーがnullのデータが登録される
オートナンバー含めて全く同一のレコードが登録される
文字化けしたレコードが登録される(数値型フィールドなのに化けた文字が入ってる)
VBAのコードが壊れる
改行が消えて行が連結される?
書いた記憶のないコードが存在する?(昔書いたかもしれない修正済みのコードが復活する?)
レコードを読み込んだ瞬間にACCESSが落ちるとか、コードを実行するとエラーが発生するとかそういう事態に遭遇したことが何度かあります
原因となりそうなところを調べてみると上記のような結果という感じです
(全てが共有していることが原因かどうかはわかりませんが)
ファイル自体が開けなくなるような致命的なのはそうそう遭遇しませんね。hatenaさんの回答と同様ですが、よほど古いモノをどうにかならないか?と相談されたときくらいです
hiroton 様、お返事ありがとうございます。
実務経験の厚い方からいろいろと伺え、本当にありがたいです。
なるほど、いろいろな壊れ方をするのですね。
フロントのデータもバックのデータも……
やはり今後も一定の遠慮を持って使って、
高望みをするのであれば SQL Server に頼むのがよさそうです。
私の使っている、あるAccessファイルは、端末の1つがノイズだらけの工場内にWi-Fi接続で、ランタイム版です。
不定期かつ頻繁に、メインPCから見て、突然作業が中断されデータベースに矛盾がある状態になります。
そのファイルをファールサーバーから強制切断後、改めてメインPCがら開くと、矛盾が自動修復され、使えるようになります。