2011-11-08 13 views
1

MS Accessデータベースには数百のレポートがあります(はい、大きなプロジェクトですが、はい、SQL Serverに切り替える必要があります)。私は昨日レポートの1つで作業していて、突然ネットワークから切断されました。私は仕事中に多くのネットワーク停止を経験しており、すべてのレポートが突然消えたこととは関係があると思います。私は自分のマシンでバックアップとリストアを設定するための管理者特権を一度も持っておらず、自分でデータベースを手動でバックアップしなければなりませんでした。MS Accessのすべてのレポートが突然削除されました

私の最新のバージョンは一週間前ですが、その後も多くの作業を行っています。私の質問は、ネットワークからの突然の切断(その後、私が働いていたデータベース)が削除を引き起こしたかどうか、そしてバックアップと復元を設定しないでデータベースを復元できるかどうかですぼくのコンピュータ。

助けてください。

編集:データベースはフロントエンド/バックエンド形式です。クラッシュしたのはフロントエンドデータベース(レポート、クエリ、およびフォーム)でしたが、削除された項目はレポートのみでした。

答えて

0

データベースが一度破損しました。不足しているレポートを元に戻すことができるかどうかは分かりません。

変更を復元する唯一の100%安全な方法は、破損が発生する前から最近のバックアップを取ることです。

しかし、ネットワーク障害が発生したときに、ユーザーがデータベースにアクセス中にというレポートを同時に変更すると、ファイルが破損する可能性があります。


が、私はそれが今、あなたを助けていないことを知っているが、ここでは、将来のためにいくつかのアドバイスです:あなたはフォームが含まれている(フロントエンドにAccessデータベースを分割について考える必要があります

、レポートとコード)とバックエンド(テーブルのみを含む)があります。

バックエンドはセントラルマシンに配置され、各ユーザーはフロントエンドのコピーを所有します。もちろん分割データベースとフロントエンドが自動的にいくつかの初期の作業が必要になります、ユーザーのマシン上で更新されますが、あなたはそれから2つの利点を獲得することを保証する

あなたが前面に働く
  1. ローカルマシンで作業しているため、ネットワークの停止の影響を受けにくくなります。
  2. バックエンドが壊れている可能性は低いです。残念なことに、実稼働環境にあるAccessデータベースのレポート、フォーム、コードを同時に変更すると、問題が発生する可能性があります。

さらに、コンピュータでバックアップと復元を設定できない場合でも、バックアップを頻繁に行う必要があります。私はAccessデータベースを手動でコピーするだけで、これを何度もやります(慣れていなくてもこれを自動的に行います)。


EDIT:

さて、それはあなたのデータベースフロントエンドに分割し、バックエンドで質問からではない、本当に明らかでした。
ネットワークの停止の原因は、あなたが「唯一の中央データベース」を編集していると思ったことです。

私はこれまで自分で何かを経験したことを覚えていないので、あなたができることを推測することができます

私の心に来ることの一つは、あなたが文書化されていないSaveAsTextLoadFromTextコマンドでテキストファイルに(あなたは自分の名前を知っていることを考えると)レポートをエクスポートしようとするかもしれないということです。

'save your report in a text file on your disk 
Application.SaveAsText acReport, "YourReport", "c:\YourReport.txt" 

'load your report from the text file in another Access database 
Application.LoadFromText acReport, "YourReport", "c:\YourReport.txt" 

しかし、これは単なるですアイデアなので、これがあなたのケースでうまくいくかどうかはわかりません。
レポートがまだ表示されている(何らかの理由で表示されない)場合もあります。

これは申し訳ありませんが、
正直なところ、私は壊れたデータベースの修復に多くの経験がありません。 )には絶対に挑戦しないので、は頻繁にバックアップを取り、あなたのような状況になることはありません。 LOTS(私はそれのために同僚たちによって「妄想」と呼ばれてきました)。


EDIT 2:私はちょうどのは、破損したデータベースがネットワーク上にあったことを答えるphoogためにあなたのコメントを読み込む

(すなわち、それはネットワーク上にあった間、あなたはそれを編集しました)。将来のために

アドバイス:これまでに、すでに彼の答えで述べたphoogの理由から、このを
をしないでください。データベースがすでにフロントエンドとバックエンドに分割されている場合は、フロントエンドのコピーを作成し、ローカルマシンで編集して、そのような事態が再び発生しないようにします。

さらに、レポートのフロントエンドが複数のユーザーによって使用されている場合は、同じ理由でネットワーク上の同じファイルでそれらのすべてが機能するようにしないでください。
フロントエンドの新しいバージョンがあるときに自動更新を含めて、各ユーザーに自分のコピーを与えることは非常に簡単です。あなたは、私が仕事でこれをやっている方法をここに読むことができます
:アプリケーションが設定されている方法


How to automatically update MS-Access 2007 application

+0

実際、私のデータベースはその形式です。クラッシュしたのはフロントエンドデータベース(レポート、クエリ、およびフォーム)でしたが、削除されたアイテムはレポートのみでした(すべて)。 – jerry

+0

@ジェリー:もう一度私の答えを読んで、私は多くのものを追加! –

0

あなたの質問は、オープン、いくつかの重要な点を去りますか? ネットワーク上のレポートを含むMDBはありますか? テーブルは同じファイルか別のファイルですか? テーブルが別のファイルにある場合、テーブルはどこにありますか?

ネットワーク接続が不安定な場合、アクセスはデータの損失やファイルの破損の恐れがあります。詳細については、http://support.microsoft.com/kb/303528(「ネットワーク環境のその他のベストプラクティス」セクションを参照)を参照してください。

この資料の情報(「トラブルシューティングや、破損Access 2002の以降のデータベースを修復する方法」http://support.microsoft.com/kb/283849)は、ネットワーク上で持っている

すべてのファイルは、ネットワーク管理者によってバックアップされている必要があります助けるかもしれませんそのため、レポートを紛失する前に最新のバックアップを依頼してください。運があれば、これは自分の最新のバックアップよりも新しいものになります。

+0

報告書を含むデータベースがネットワーク上にあります。ただし、バックエンドデータベースのテーブル(ネットワーク上のテーブル)にのみリンクされていますが、実際には独自のテーブルはありません。最初の記事を読んだ後、他のアプリケーションでAccessを使用していないため、設定が「高ストレス」であるかどうかはわかりませんが、環境自体が高ストレスとラベル付けされる可能性があります私は3つまたは4つの異なるフロントエンドを常に接続しています。多分それにも関係があります。私はトラブルシューティングを試みます。リンクのおかげで – jerry

+1

MDB(またはACCDB、私は以前に述べたはずです)がネットワーク上にあるという事実は、この脆弱性の原因です。*ファイルに書き込むプロセスはコンピュータ*上にあるため、バックエンドファイルは同じネットワーク上にあります。そのため、書き込み操作の途中で接続が中断され、ファイルが破損した状態になる可能性があります。 – phoog

関連する問題